基本数据类型

java是强类型语言,指的是一旦一个常量或变量声明出来,它的类型就确定了,以后都不会变成其它类型,声明的时候是整型,以后都是整型。
java中的基本数据类型大概可以分为三大类,字符型,布尔型,数值类型。

字符型:char

char c = 'A'; //最基本的表示法
char c = 65;//用整型数值表示
char c = '\u0041';//采用16进制的unicode码

布尔型:boolean

要么true,要么false
boolean b1 =true;
boolean b2 = false;

整数型

byte

byte称之为一个字节,一个字节等于二进制的8位。

short

short 短整型 16位的整型

int

int  整型 32位
平常见到整型常量,它默认都是int类型
System.out.println(100);
a = b+3;

long

long - 长整型 64位

浮点型

有一些数是不能精确表示
2.0-1.1 = 0.9;//可是不是
结论是,尽量避免比较2个浮点数是否相等!!!!!

float

float - 单精度浮点,32位

double

双精度浮点 64位
默认情况下,所有的小数常量都是double

数据类型之间的转换

自动转换

1 public class JiBen {
2 public static void main(String[] args) {
3     int num1=12;
4     double num2=10.0;
5 System.out.println(num1+num2); //22.0
6 }
具体地讲,当一个较"小"数据与一个较"大"的数据一起运算时,系统将自动将"小"数据转换成"大"数据,再进行运算。这些类由"小"到"大"分别为 (byte,short,char)--int--long--float—double。这里我们所说的"大"与"小",并不是指占用字节的多少,而是指表示值的范围的大小。

强制转换

1 package Jiben;
2 
3 public class JiBen {
4 public static void main(String[] args) {
5     double num1=12.223;
6     int num2=(int) num1;
7     System.out.println(num2);//12
8 }
9 }
将"大"数据转换为"小"数据时,你可以使用强制类型转换。这种转换肯定可能会导致溢出或精度的下降。

基本数据类型与字符串之间的转换

基本数据类型 >>> 字符串

toString();
基本数据类型的都有一个静态方法toString(),转换时可以采用 "封装类型.toString(对应的基本数据类型字面值)" 方法来转换成字符串。
 1 package Jiben;
 2 
 3 public class JiBen {
 4 public static void main(String[] args) {
 5     Integer i1=new Integer(122);
 6     i1.toString();
 7     
 8     Double d1=new Double(12.1);
 9     d1.toString();
10 }
11 }



+" "   可以使用这种拼接的方法实现转换
1 package Jiben;
2 
3 public class JiBen {
4 public static void main(String[] args) {
5     int a=12;
6     String a2="hahah"+a;
7 }
8 }


valueOf:利用String类的静态方法valueOf()
1 package Jiben;
2 
3 public class JiBen {
4 public static void main(String[] args) {
5     int a=12;
6     String.valueOf(a);
7 }
8 }

字符串 >>> 基本数据类型

利用基本数据类型包装类的parseXxx方法(需注意字符串转成基本数据类型时字符串内容必须是基本数据类型的字面值,否则编译虽然能通过,但运行时出现NumberFormatException)
 1 package Jiben;
 2 
 3 public class JiBen {
 4 public static void main(String[] args) {
 5     String a="1212";
 6     int a2=Integer.parseInt(a);
 7     
 8     double a3=Double.parseDouble(a);
 9 }
10 }


用字符串构造基本类型的封装对象,再调用封装对象的xxxValue方法
1 package Jiben;
2 
3 public class JiBen {
4 public static void main(String[] args) {
5     String a="1212";
6     Integer a2=new Integer(a);
7     int a3=a2.intValue();
8 }
9 }