1.Java的数据类型分为:8种Primitive Data Type和5种ReferenceData Type
PDT:
7种数值类型: byte(1),short(2),int(4),long(8),float(4),double(8),char(2)
布尔类型:true,false
整型默认是int,浮点型默认是double. long或float型要带L或F的后缀
RDT:
类(class),接口(interface),数组,枚举(enum),注解(annotation)
2.自动类型提升:低字节到高字节(小瓶水往大瓶倒,不会洒)
byte->short->int->long->float->double(科学记数法形式5.12E2)
强制类型转换:用小括号运算符,会丢失精度
3.在Java里字符串不是基本数据类型,它是String类的实例
4.基本数据类型知识中比较有意思的是:字符串和基本类型间的互换
(1)基本类型转换为字符串
A.基本类型+“ ”=字符串;
B.String类的静态方法(类方法) String valueOf(primitive);
(String类提供了多个重载的valueOf()方法用于将基本类型转换为字符串)
C.包装类的String toString(XXX)方法。
(2)字符串转换为基本类型
A.包装类(WrapperClass)的XXX parseXXX(String s)方法;
总结一下:包装类的两个方法可以实现上面的互换。
5.字符的三种表示,字符的实质是数值
Java使用16位Unicode字符集作为编码方式(包含中文字符和各国文字)
char a='A';
'\n'(转义表示)
'\ u XXXX';(4位16进制数形式)
6.包装类简单介绍
PDT的包装类:除了int和char型的包装类为:Integer和Character, 其它的都是类型的首字母大写,如:Float是flat的包装类
自动装箱:某数据类型的值可以直接赋给对应的包装类
自动拆箱:包装类可以直接赋给对应数据类型的变量
7.字符串与字符数组间的互换
(1)字符串转换为字符数组
调用String的实例方法char[] getCharArray()
(2)字符数组转换为字符串
A.String的构造函数 new String(char[] ch)
B.调用String类的类方法String valueOf(char[] ch)
8.数组与字符串之间的互换
String的实例方法char[] toCharArray();将字符串变成字符数组
String的构造方法String str=new String(char[]);将字符数组变成字符串
Arrays类的静态方法String toString(type[]),可以将多种类型的数组变为字符串,但这个字符串首尾都是中括号,之间还有逗号和空格。
package knowledge_basic;
public class DataTypeTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
int a=5;
long b=5L;
double c=3.96;
float d=3.96F;
char c1='A';
char c2='\u0041';
int e=c1;
System.out.println(a+" "+b+" "+c+" "+d+" "+e+" "+c1+" "+c2);
System.out.println((a==b)+" "+(c==d)+" "+(c1==c2));
double f=3.1415926;
String s="3.1415926";
String s1=f+" ";
String s2=String.valueOf(f);
String s3=Double.toString(f);
System.out.println(s1+" "+s2+" "+s3);
double g=Double.parseDouble(s);
System.out.println(g);
}
}
5 5 3.96 3.96 65 A A
true false true
3.1415926 3.1415926 3.1415926
3.1415926