Java基本数据类型

来源:互联网 发布:ant java参数 编辑:程序博客网 时间:2024/06/05 01:56


-->Java数据类型


-->java基本数据类型


第一种:boolean  

//boolean只有两个取值:true和false,默认值为falseboolean b1 = true;//true为布尔型直接量boolean b2 = false;//false为布尔型直接量boolean b3 = 250;//编译错误,数据类型不匹配

第二种:byte

//byte数据类型是8位、有符号,最小值-128,最大值127,默认值为0byte b1 = 5;byte b2 = 6;byte b3 = 128;//报错,赋值过大

第三种:short

//short数据类型是16位、有符号,最小值是-32768,最大值是32767,默认值是0short s = 18;

第四种:int

//int数据类型是32位、有符号,默认值为0//最小值是-2,147,483,648;最大值是2,147,483,647int a=250; //250为整型直接量,默认为int型int b=10000000000; //编译错误,100亿默认为int型,但超范围了int c=5.6; //编译错误,数据类型不匹配//整数相除,结果还是整数,小数位无条件舍弃System.out.println(5/2); //2,小数位舍弃了System.out.println(2/5); //0,小数位舍弃了System.out.println(5.0/2); //2.5int d=2147483647;d=d+1;System.out.println(d); //溢出了,是需要避免的

第五种:long

//long数据类型是64位、有符号,默认值为0L;//最小值是-9,223,372,036,854,775,808//最大值是9,223,372,036,854,775,807long a=250L; //250L为长整型直接量long b=10000000000; //编译错误,100亿默认为int型,但超范围了long c=10000000000L;//100亿L为long型//运算时有可能溢出建议第一个数字后加L,而且尽量不要写l(和数字1区分)long d=1000000000*2*10L;System.out.println(d); //200亿long e=1000000000*3*10L;System.out.println(e); //肯定不是300亿long f=1000000000L*3*10;System.out.println(f); //300亿//获取自1970.1.1零时到此时此刻的毫秒数long g=System.currentTimeMillis();System.out.println(g);

第六种:float

//float数据类型是单精度、32位,默认值为0.0F;float b=3.14F; //3.14F为float的直接量

第七种:double

//double数据类型是双精度、64位,默认值是0.0d;//double类型同样不能表示精确的值,如货币;double a=3.14159; //3.14159为浮点型直接量,默认为double型//double运算时会有舍入误差,所以精确运算场不能用double c=6.0;double d=4.9;System.out.println(c-d); //1.0999999999996,舍入误差

第八种:char

//char类型是一个单一的16位Unicode字符,可以储存任何字符//char:字符型。2个字节 必须放在单引号中,有且仅有一个char c1 = '女';char c2 = 'f';char c3 = '8';char c4 = ' ';char c5 = 你;//编译错误,必须放在单引号中char c6 = '你好';//编译错误,必须一个字符char c7 = '';//编译错误,必须有一个字符char c8 = 97;//数字必须在0到65535之间System.out.prinln(c8);//aSystem.out.println(2+2);//4System.out.println('2'+'2');//100,'2'的码50,加上'2'的码50char c9 = '\'';System.out.println(c9);//'

数据类型的转换

int a = 5;long b = a;//自动类型转换int c = (int)b;//强制类型转换long d = 6;//自动类型的转换double e = 6;//自动类型的转换System.out.println(e);long f = 10000000000L;int g = (int)f;System.out.println(g);//强转有可能会溢出double h = 65.985;int i = (int)h;System.out.println(i);//强转有可能会精度丢失byte b1 = 5;byte b2 = 6;byte b3 = (byte)(b1 + b2);//int转byteSystem.out.println(b3);



如有问题欢迎留言!

0 0
原创粉丝点击