Java基础之数据类型

Posted 木木子木木呀

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础之数据类型相关的知识,希望对你有一定的参考价值。

数据类型

进制之间的转换

十进制 二进制(0B) 八进制(0) 十六进制(0X)之间的转换

十进制转二进制:除2到取余

二进制转八进制:从最右边开始,三位一组,换算成十进制的值

二进制转十六进制:从最右边开始,四位一组,换算成十进制的值

浮点型float和double

计算机中存储3.14

小数涉及:整数部分 小数部分 . 正负号

1、小数部分转成二进制,是乘2取整数部分

3.14----》11.00100...

2、科学计数法表示

1.100100...*n的1次方

科学计数法,整数部分永远是1,小数点也不用存储,只存三个内容:正负号,几次方,小数点部分。

float:4个字节, 最高位符号位,8位存指数,其他小数部分

double:8个字节, 最高位符号位,11位存指数,其他小数部分

3、浮点类型不稳定,因为十进制转二进制,小数点需要会舍掉一些

4、float类型存的范围其实比long还要大,因为浮点型的底层存储的是指数

基本数据类型转换

1、隐性转换:数值类型,如果小的类型可以转成大的类型,大的类型不可以转成小的

2、强制转换:运用于字符和数值型,强制转成想要的,例如int a=(int)10.0,缺点:会溢出,缺失精度

3、两个byte,short,char类型相加,产生编译错误

byte a = 1;

byte b = 1byte c = a + b;   //因为byte底层还是用Int进行运算

//同理short,char也会转成Int类型

4、字符串类型

任何类型和字符串拼接,都会转成字符串类型

char c1 = ‘0‘;

char c2 = ‘1‘;

System.out.println(c1+c2+""); //97

System.out.println(""+c1+c2); //01

System.out.println(c1+""+c2); //01

//算法运算用左往右,所以c1+c2按照求和运算,char+char=int, 所以结果是97
//""+c1 是按照拼接运算,字符串+char=字符串

 

以上是关于Java基础之数据类型的主要内容,如果未能解决你的问题,请参考以下文章

java基础之注释关键字标识符数据类型和常量

SQL基础之XML

Java基础系列之基础数据类型

Java基础之路下--引用数据类型之数组

java基础之数据类型

Java基础之方法的调用重载以及简单的递归