JAVA学习笔记-4(数据类型)

一、基本介绍

  • 强类型语言 :JAVA是强类型语言,即要求变量的使用要严格符合要求,所有变量都必须先定义后使用,如:String a=10 会报错 ,String a="10" 才是正确写法
  • 弱类型语言 :不太要求变量写法
  • JAVA的数据类型分为:基本类型(primitive type),引用类型(reference type)

例1:

public class HelloWorld {
    public static void main(String[] args) {
        //这是一次呐喊
        /*这是一个测试
        * 也是一个开始*/
        System.out.println("Hello world!");
        //字符串
        String v1="shen";
        System.out.println(v1);
        //整数
        byte  v2 = 10;
        System.out.println(v2);
        //短整数
        short v3 = -123;
        System.out.println(v3);
        //整数
        int v4 = 234554;
        System.out.println(v4);
        //长整数
        //long 类型后面的L理论上不分大小写,不过小写的l很容易被看成是数据字1,所以一般建议大写
        long v5 = 193873343L;
        System.out.println(v5);
        // 浮点数
        float v6 = 345.23F;
        double v7 = 549383.4838;
        System.out.println(v6);
        System.out.println(v7);

        /*字符拓展:char:char 类型是一个单一的 16 位 Unicode 字符;
            最小值是 \u0000(十进制等效值为 0);
            最大值是 \uffff(即为 65535);
            char 数据类型可以储存任何字符*/

        char a3 = 'a';
        char a4 = '国';
        // 在变量前加类型关键字,如(int)可以强制转换数据类型,一般用于高数据类型向低数据类型转换
        System.out.println((int)a3); //强制转换
        System.out.println((int)a4); //强制转换
        //
        char b3='\u0a12'; //UNICODE表示方法
        System.out.println(b3); //输出字符
    }
}

二、常用的转义字符

"\b"(退格)

"\f" (换页)

"\n"(换行)

"\r"(回车)

"\t"(制表符)

"\'"(单引号)

"\""(双引号)

"\\"(斜杠)

三、浮点数拓展

public class DataType1 {
    public static void main(String[] args) {
        byte a1 = 127;
        /*当我使用 byte a2 = a1+1 或 byte a2=127+1 时,会提示报错,可能会
        * 造成数据丢失,没有显示 -128,不知道是不是JAVA版本或是IDEA的问题,所以
        * 只能改为int*/
        int a2 = 127+1;
        System.out.println(a1);
        System.out.println(a2);

        /*float 是有精度的,但不太建议去做运算,因为会有精确度的问题出现,四舍五入,也不要去
        表示精确的值,如货币*,真要用可以使用 BigDecimal /
        float b1 = 1.1F;
        float b2 = 11/10;

        System.out.println(b1);
        System.out.println(b2);
        System.out.println(b1==b2);
    }
}

/*上面b1,b2的输出值分别为
1.1
1.0
false
*/

四、整数拓展

        //进制数的表示
        int a1= 0b10110110; //二进制在前面在个 0b
        int a2= 0145; // 八进制在前面加个0
        int a3= 0x145; // 十六进制在前面加 0x
        System.out.println(a1);
        System.out.println(a2);
        System.out.println(a3);

五、类型转换注意点

  1. 不能转换boolean值
  2. 不能把数据转换成不相干的类型
  3. 把高容量类型数据转换为低容量类型时,要强制转换
  4. 转换时可能存在内存溢出,或精度问题
public class DataType1 {
    public static void main(String[] args) {
        int a=128;
        byte a1 = (byte)a; //强制类型转换
        System.out.println(a1);  //输出-128,内存溢出

        //可能丢失精度
        System.out.println((int)45.86F); //只输出45

        char a9 = 'c';
        int a10 = a9+1;
        System.out.println(a10); //输出100
        System.out.println((char)a10); //输出d

        //操作比较大的数的时候,注意溢出
        //数字之间可以用下划线分割
        int c1 = 10_000_0000;
        int c2 = 40;
        int c3 = c1*c2;
        System.out.println(c1); //输出100000000
        System.out.println(c3); //输出会溢出-294967296
        long c4 = c1*(long)c2;
        System.out.println(c4); //输出4000000000
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值