首页 > 代码库 > Java零基础系列002——命名、变量类型、类型转换、JDK中二进制整数和数字分隔符新特性
Java零基础系列002——命名、变量类型、类型转换、JDK中二进制整数和数字分隔符新特性
public class BasicDataType { public static void main(String[] args) { /* * 标示符:用于给变量、方法、类命名,必须以字母、下划线、$符号开头。以字母、下划线、数字、$符号组合,且不能为关键字 * * * */ System.out.println("--------------标示符------------"); int $,_,a;//正确的命名 int 彭驰=12;//由于Java内部采用Unicode编码方式,所以可以用汉字命名 System.out.println("以彭驰命名的变量的值"+彭驰); /* * java的数据类型,Java是强类型语言,所以变量必须声明类型。 * *数值型(byte、short、int、long--------------float、double) * * * * *基本数据类型 * 数据类型* *字符型(char) * * * * * *数组 * *引用数据类型 * * *类 * * *接口 * * * */ System.out.println("-------------数值类型------------------"); //数值型,java内部常量整型数值的默认类型是int型 byte by = 100;//byte占1字节,表数范围是-128~127(-2^8~2^8-1) short sh = 30000;//short占2个字节,表数范围是-2^16~2^16-1(大约3万) int in = 300000;//int占4个字节,表数范围是-2^32~2^32-1(大约21亿) long lo = 30000000L;////long占8个字节,表数范围是-2^64~2^64-1(大约很多很多),数字后面加L(l)说明该数值是long型 System.out.println("by:"+by+" "+"sh:"+sh+"in:"+in+" "+"lo:"+lo); //浮点数,java内部小数常量的默认类型是double型 float fl = 3.14f;//float占4字节,表数范围是-3403e38~3403e38(e38=10^38),float型常量后面加f,不然系统会认为它是double型,而报语法错误 double dou = 3.14;//double占8个字节,表示范围在-1798e308-1798e308 System.out.println("fl:"+fl+" "+"dou:"+dou); //浮点数都会有误差,所以少用它们当比较判断,如下面 System.out.println("3.14*100==314%100的输出:"+(3.14*100==314%100));//输出结果为false,因为浮点型数值存在误差,比如1.0的真实值只有0.999999999999999. //char字符型,占两字节,用‘’号。 char ch = ‘a‘; //常见转义符:\b-退格,\n-换行、\r-回车、\t-tab、\"-双引号、\‘-单引号、\\-反斜杠, //boolean类型 boolean bool = true; //boolean占1位。是1位不是1字节,其值不是true就是false /* * 自动转换 * 一般容量小的类型可以自动转换成容量大的类型 * * */ sh=by;//byte转换成short,无需强转 in=sh;in=by;in=ch;//byte、short、char转换成int,无需强转 lo=in;lo=sh;lo=by;//int、short、byte转换成long,无需强转 fl=in;fl=lo;//int、long转换成float,无需强转,但会有精度损失 dou=fl;dou=in;dou=lo;//float、int、long转换成double,int、long转时会有精度缺失 /* * 强制类型转换 */ ch=(char)in;//强制类型转换在前面加括号和强转类型 /* * 类型提升 */ float lo1 = 4.0f+in;//4.0f+in后类型会自动提升为float /* * JDK7新特性----二进制和数值分隔符 * */ System.out.println("JDK7新特性----二进制和数值分隔符"); int in1 = 0b00000000000000000000000000000010;//JDK7以0b开头后面可以直接写二进制的编码 int in2 = 1_000_000;//JDK7下可以用下划线对数值进行分割,方面查看 System.out.println("二进制00000000000000000000000000000010的值:"+in1); System.out.println("1_000_000的值:"+in2); }}
运行结果:
Java零基础系列002——命名、变量类型、类型转换、JDK中二进制整数和数字分隔符新特性
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。