Java基础语法:3. Java基本数据类型

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/SouthWind0/article/details/82829469

Java基础语法:3. Java基本数据类型

Java 的两大数据类型:内置数据类型、引用数据类型。

1)基本数据类型

八种基本类型:六种数字类型(四个整数型,两个浮点型),字符型,布尔型。

(1)byte

  • byte数据类型是8位、有符号的,以二进制补码表示的整数。用在大型数组中节约空间,主要代替整数,因为byte变量占用的空间只有 int类型的四分之一。
  • 最小值是 -128(-2^7)。
  • 最大值是 127(2^7-1)。
  • 例子:byte a = 100。

(2)short

  • short数据类型是16位、有符号的,以二进制补码表示的整数。一个short变量是int型变量所占空间的二分之一。
  • 最小值是 -32768(-2^15)。
  • 最大值是 32767(2^15 - 1)。
  • 例子:short a=1000。

(3)int

  • int数据类型是32位、有符号的,以二进制补码表示的整数。一般的整型变量默认为 int 类型。
  • 最小值是 -2,147,483,648(-2^31)。
  • 最大值是 2,147,483,647(2^31 - 1)。
  • 例子:int a = 100000。

(4)long

  • long数据类型是64位、有符号的,以二进制补码表示的整数。主要使用在较大整数的系统上。
  • 例子:long a = 9000000000L。

(5)float

  • float数据类型是单精度、32位、符合IEEE 754标准的浮点数。
  • 有效数字7位。
  • 例子:float f1 = 98.98123f。

(6)double

  • double数据类型是双精度、64 位、符合IEEE 754标准的浮点数,

浮点数的默认类型为double类型。

  • 精度比float高,有效数字16位。但消耗内存是float的2倍,运行速度也比float慢。
  • 例子:double d1 = 123.45。

(7)boolean

  • boolean数据类型只有两个取值:true和false。
  • 例子:boolean choice = true。

(8)char

  • char类型是一个单一的 16 位Unicode字符;
  • 最小值是 0、最大值是 65535。
  • 例子:char letter = '男'。

2)引用类型

Java的引用类型变量类似于C/C++的指针。引用类型指向一个对象,指向对象的变量是引用变量,这些变量在声明时被指定为一个特定的类型。如对象、数组等都是引用数据类型。

代码:

package com.test1;

public class HelloJava {

	public static void main(String[] args) {
		byte a=127; 
		System.out.println("a的值是:"+a);
		System.out.println("byte二进制位数:"+Byte.SIZE+"\t最大值:"+Byte.MAX_VALUE+"\t最小值:"+Byte.MIN_VALUE);
		
		short b=32767;
		System.out.println("b的值是:"+b);
		System.out.println("short二进制位数:"+Short.SIZE+"\t最大值:"+Short.MAX_VALUE+"\t最小值:"+Short.MIN_VALUE);
		
		int c=2147483647;
		System.out.println("c的值是:"+c);
		System.out.println("int二进制位数:"+Integer.SIZE+"\t最大值:"+Integer.MAX_VALUE+"\t最小值:"+Integer.MIN_VALUE);
		
		long d=9223372036854775807L;
		System.out.println("d的值是:"+d);
		System.out.println("long二进制位数:"+Long.SIZE+"\t最大值:"+Long.MAX_VALUE+"\t最小值:"+Long.MIN_VALUE);
		
		float f1=98.98123f;
		System.out.println("f1的值是:"+f1);
		System.out.println("float二进制位数:"+Float.SIZE+"\t最大值:"+Float.MAX_VALUE+"\t最小值:"+Float.MIN_VALUE);
		
		double d1=98.981231;
		System.out.println("d1的值是:"+d1);
		System.out.println("double二进制位数:"+Double.SIZE+"\t最大值:"+Double.MAX_VALUE+"\t最小值:"+Double.MIN_VALUE);
		
		boolean choice=true;
		System.out.println("choice的值是:"+choice);
		
		char letter='中';
		System.out.println("letter的值是:"+letter);	
	}
}

运行结果:

3)基本数据类型转换

从低位类型到高位类型自动转换;从高位类型到低位类型需要强制类型转换。布尔型和其它基本数据类型之间不能相互转换。自动转换规则如下:

(1)byte型可以转换为short、int、、long、float和double;

(2)short可转换为int、long、float和double;

(3)char可转换为int、long、float和double;

(4)int可转换为long、float和double;

(5)long可转换为float和double;

(6)float可转换为double;

代码:

package com.test1;

public class DataBase {

	public static void main(String[] args) {
		System.out.println("----------自动转换--------");
		char letter='A';
		int n=letter;
		System.out.println("char类型"+letter+"自动转换为int类型的值是:"+n);
		int a=119;
		double d1=a;
		System.out.println("int类型"+a+"自动转换为double类型的值是:"+d1);
		
		System.out.println("----------强制转换--------");
		double d2=3.1415926;
		int b=(int)d2;
		System.out.println("double类型"+d2+"强制转换为int类型的值是:"+b);	
	}
}

运行结果:

 

猜你喜欢

转载自blog.csdn.net/SouthWind0/article/details/82829469