Java系列2—基本数据类型

基本数据类型

一、数据类型概述

1、编码发展
ASCII码–>
随着计算机发展出现:
ISO-8859-1(latin-1)
随着计算机向亚洲发展,开始逐渐支持中文:
GB2312–>GBK–>GB18030
支持繁体中文:大五码
后来出现了一种编码方式统一了全球所有文字,容量较大,这种编码方式叫做unicode编码。unicode编码方式由多种具体实现。
UTF-8,UTF-16,UTF-32
2、基本数据类型的取值范围:

类型 范围
byte -128~127
short -32768~32767
int -2147483648~2147483647
long
float
double
boolean true/false
char 0~65535

3、基本数据类型的默认值,向0看齐

数据类型 默认值
byte,short,int,long 0
float,double 0.0f/0.0d
boolean false
char \u0000

4、转义字符
关于java语言中的char类型,转义字符
转义字符:
反斜杠在java语言中具有转义功能
转义字符出现在特殊字符之前,会将特殊字符转义
\n 换行 \t制表符 '单引号 "双引号 \反斜杠
5、JDK中的native2ascii将字符转化为unicode编码

二、类型之间的转换

  1. 在类体中定义的变量,系统会自动赋初值,向0看齐。

    public class DataTypeTest01
    {
    	//这里的static必须要加
    	static int k = 1000;
    
    	// 1、成员变量没有赋值,系统会自动赋值,向0看齐
    	// byte		0
    	// short		0
    	// int		0
    	// long		0
    	// char		\u0000
    	static int f;
    	public static void main(String[] args){
    		/*
    		int i; //局部变量
    		System.out.println(i)
    		*/
    		System.out.println(f);	 //0
    
    		//2、定义一个char类型的变量,起名c,同时赋值为a
    		char c = 'a';
    		System.out.println(c);
    
    		//3、一个中文占用2个字节,char类型正好是2字节
    		//所以java中的char类型变量可以存储一个中文字符
    		char x = '中';
    		System.out.println(x);
    	}	
    }
    
  2. java中的char类型

    /*
    	关于java语言中的char类型,转义字符
    		转义字符:\
    		反斜杠在java语言中具有转义功能
    		转义字符出现在特殊字符之前,会将特殊字符转义
    		\n 换行  \t制表符   \'单引号 	 \"双引号	\\反斜杠
    */
    public class DataTypeTest02
    {
    	public static void main(String[] args){
    		char c1 = 'n';
    		System.out.println(c1);
    		char c2 = '\n';  //并不是一个字符串\n,表示换行
    		System.out.println(c2);
    
    		//System.out.println()  //具有换行功能,输出以后换行
    		//System.out.print()  	//输出但是不换行
    
    		char x = 't';
    		//	\t代表制表符,tab键
    		char y ='\t';
    		System.out.print(x);
    		System.out.print(y);
    		System.out.println('B');
    
    		char z = '\\';
    		System.out.println(z);
    		//char a = '';  //报错:java中不允许这样写
    		//char a = '''; //报错:第一个单引号和第二个单引号配对,最后的单引号找不到另一半
    		char b = '\'';
    		System.out.println(b);
    
    		System.out.println("\"Hello World!\"");
    
    		char m = '中';
    		System.out.println(m);
    
    		char n = '\u4e2d';
    		System.out.println(n);
    
    		char c10 = '\u0000'; //空字符
    		System.out.println(c10+1);
    
    		//在java语言中整数表现形式有三种
    		//1、十进制:是一种缺省的表现形式
    		//2、八进制:以0开始
    		//3、十六进制:以ox开始
    
    		int d = 10;
    		int e = 010;
    		int f = 0x10;
    		System.out.println(d);
    		System.out.println(e);
    		System.out.println(f);
    
    		//在java语言中,整数默认为int类型进行处理,不能超出int类型的实际范围,
    		//超出实际范围时需要在整数最后加l/L;推荐使用L
    		//123这个整数属于int类型
    		//i声明时也是int类型,
    		//所以不存在类型转换
    		int i = 123;
    		System.out.println(i);
    
    		//457是int类型
    		//y声明时是long类型
    		//小容量可以自动转换为大容量,存在类型转换
    		long j = 457;
    		System.out.println(j);
    
    		//2147483647字面值是int类型,占用4个字节
    		//y是long类型,占用8个字节,会自动类型转换
    		long c11 = 2147483647;
    		System.out.println(c11);
    
    		//错误: 过大的整数: 2147483648
    		// long c12 = 2147483648;
    
    		//处理:
    		long c12 = 2147483648L;
    		System.out.println(c12);
    
    	}
    }
    
  3. java中的变量需要先声明,再赋值

    直接在类体中声明的变量叫做成员变量,在方法体中声明的变量叫做成员变量。同一个变量只能声明一个,不能重复声明。

  4. 类型之间的转换

    /*
    关于基本数据类型之间的互相转换:转换规则
    	1、八种基本数据局类型当中除布尔类型之外剩余的7中类型之间都可以相互转换。
    	2、小容量向大容量转换,称为自动类型转换,容量从小到大排序:
    	byte < short < int < long < float < double
    		   char<
    		注:
    			任何浮点类型不管占用多少字节,都比整数型容量大
    			char和short可表示的种类数量相同,但是char可以取更大的正整数。
    
    	3、char c=97; //a
    	4、当整数字面值没有超出byte,short,char的取值范围,可以直接赋值给byte,short,char类型的变量
    	5、byte,short,char混合运算的时候,各自先转换成int类型再做运算
    	6、多种数据类型混合运算,先转换成容量最大的那种类型,再做运算。
    */
    

猜你喜欢

转载自blog.csdn.net/qq_42486675/article/details/106506961