目录
数据类型
数据类型
强类型语言
要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用。
long是整数类型范围最大的;
注意long、float后要加L、F;
String不是关键字,是一种类;
数据类型拓展
整数拓展
public class 整数{
public static void main(String[] args){
//进制:二进制0b 十进制 八进制0 十六进制0x
int i=10;
int i2=010;//八进制0
int i3=0x10;//十六进制
System.out.println(i);
System.out.println(i2);
System.out.println(i3);
}
}
运行结果:
浮点数拓展
并不是所有的小数都能可以精确的用二进制浮点数表示!
大数值:Java.math下面的两个有用的类:BigInteger和BigDecimal,这两个类可以处理任意长度的数值。
BigInteger实现了任意精度的整数运算。BigDecimal实现了任意精度的浮点运算。
字符型拓展
运行结果:
‘A’是一个字符;“A”表示一个字符串;
Unicode编码被设计用来处理各种语言的所有文字,它占2个字节,可允许有65536个字符;
【科普:2字节=16位 2的16次方=65536,我们用的Excel原来就只有这么多行,并不是无限的】
转义字符
布尔值拓展
if (is == true && un == false ) {...}
if ( is && !un ) {....}
类型转换
低 ------------------------------------> 高
byte,short,char—> int —> long—> float —> double
自动类型转换:容量小的数据类型可以自动转换为容量大的数据类型。
浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入
(int)23.7 == 23;
(int)-45.89f == -45
当将一种类型强制转换成另一种类型,而又超出了目标类型的表示范围,就会被截断成为一个完全不同的值,溢出。
public static void main(String[] args) {
int x = 300;
byte bx = (byte)x; //值为44
System.out.println(bx);
}
JDK7扩展
public static void main(String[] args) {
int a = 0b0101;
int b = 1_2345_7893;
System.out.println(a); //5
System.out.println(b); //123457893 }
JDK7为我们直接提供了
二进制整数的类型:0b开头即可;
下划线分隔符;