快速学习掌握数据类型

本文介绍了Java中的数据类型,包括基本数据类型如整数型(byte,short,int,long)、浮点型(float,double)、字符型(char)和布尔型(boolean),以及引用数据类型如String。同时,详细阐述了数据类型转换的概念,包括自动类型转换(从小范围到大范围)和强制类型转换(可能涉及精度损失)。通过示例代码展示了不同类型之间的转换方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

快速学习掌握数据类型

1、数据类型分为基本数据类型和引用数据类型。

2、数据类型转换分为自动类型转换和强制类型转换。

1.1、基本数据类型分为:整数型、浮点型、布尔型、字符型

public class demo01 {
    public static void main(String[] args) {
        //1、整数型
        //1.1 byte类型:一个字节,范围:-128~127
        byte num1 = 1;
        System.out.println(num1);
        //注意:不要给byte类型的变量赋值超过范围的数字
        //byte num2 = 128;
        //报错原因:因为128超过了byte的范围,所以此时有默认机制,Java中整数默认是int类型的数据不能赋值给byte

        //1.2short类型:两个字节,不用记忆范围
        short num2 = 2;
        System.out.println(num2);
        //注意:也不要随便超过范围
        //short num3 = 40000;

        //1.3long类型:8个字节,范围更大
        //注意:给long类型的变量赋值,语法要求数字要加标记,数字结尾加L或l,推荐L
        long num4 = 1000000000000L;

        //注意:4没有加L或l,此时默认int类型,但是Java语法规定,小范围的类型可以直接给大范围类型赋值
        long num5 = 4;

        //1.5:整数中常用int类型,因为它的范围最合适!byte和short太小了,long又太大了!

        //2.浮点型也叫小数型
        //2.1 float:单精度型。4个字节,范围比long大!
        //注意:语法规定:给float类型赋值时,字面量也需要加标记F或者f
        float num6 = 3.14F;

        //2.2 double:双精度型。Java中小数的默认值
        //
        double num7 = 3.14;
        System.out.println(num7);

        //3.字符型 两个字节
        char ch = 'a';

        char ch2 = 98;
        System.out.println(ch2);
        System.out.println("---------------");
		
		//4.布尔型 一个字节
        boolean b1 = true;
        boolean b2 = false;
        System.out.println(true);
        System.out.println(false);
    }
}
运行结果:1
2
3.14
b
---------------
true
false

1.2、引用数据类型;String等,普遍用于字符串。

例如:String name = "我是程序员";

1.3、数据类型转换分为自动类型转换和强制类型转换。

public class demo01 {
    public static void main(String[] args) {
        //自动类型转换:指的是Java语法允许将一个数据范围小的类型数据给大范围的变量赋值。(小的给大的)
        byte a = 12;

        //2.定义int类型的变量,int类型的范围比byte大
        int b = a;
        System.out.println(b);
        //为什么允许呢?int的空间比byte大,放数据的时候不需要考虑是否放得下,一定放的下!

        //定义一个double类型的变量,将b给他赋值
        //double的范围比int大,所以允许直接赋值
        double c = b;

        //double类型的变量只能存储小数,所以12变成了12.0
        System.out.println(c);

    }
}
public class demo03 {
    public static void main(String[] args) {
        //强制数据转换类型:也叫显示转换!指的是可以利用格式强制计算机将大的给小的赋值
        //格式:小范围的数据类型 变量名 = 需要强转的值;

        //1.定义一个int类型的变量,赋值1
        int a = 1;
        //2、将a给byte类型的赋值
        //byte b = a;
        //用格式表现
        byte b = (byte) a;


        //3.强转有可能造成精度损失(数据不准确)
        //也可以对字面量进行强转
        byte c = (byte) 128;
        //原本是正数,就变成了负数!这就是精度损失!一般不推荐!
        System.out.println(c);

        //4.小数也可以强转成整数
        double d = 6.8;
        //int e = d;
        int e = (int) d;
        //e是整数类型,所有只能存整数,而且是直接将小数舍弃
        System.out.println(e);

        //5.除了对变量、字面量可以强转,表达式也可以强转!
        byte x = 1;
        byte y = 2;

        byte z = (byte) (x + y);
        System.out.println(z);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值