* byte是字节数据类型,有符号型(有正负,最高位符号位),占1个字节(ascii码);大小范围为-128—127
* byte 8位 可以表示256个数 但是最高位是符号位 所以只有7位表示数字 所以大小范围为-128—127
* char是字符数据类型,无符号型(无正负,所有位都表示数大小),占2字节(Unicode码);大小范围是0—65535
* char可以表中文字符,byte不可以
* byte 输出结果都会转化成数字,char 输出结果都会转化为字符
* int转换为byte,int是32位,byte是8位,因此当int类型转换为byte时,高24位直接丢弃。
/**
* byte是字节数据类型,有符号型(有正负,最高位符号位),占1个字节(ascii码);大小范围为-128—127
* byte 8位 可以表示256个数 但是最高位是符号位 所以只有7位表示数字 所以大小范围为-128—127
* char是字符数据类型,无符号型(无正负,所有位都表示数大小),占2字节(Unicode码);大小范围是0—65535
* char可以表中文字符,byte不可以
* byte 输出结果都会转化成数字,char 输出结果都会转化为字符
* int转换为byte,int是32位,byte是8位,因此当int类型转换为byte时,高24位直接丢弃。
* char值只能为单个字符,多字符如'AB',这样就要用字符串String接收了
*/
char a1=35;//# char类型 参ASCII码
char a2='中';
char a3='#';
char a4='a';
char b1='\n';//换行符
char b2='\t';//制表符
System.out.println(a1);
System.out.println(a2);
System.out.println(a3);
System.out.println(a4);
byte a5=35;//35
byte a6='#';//byte类型 参Unicode码 35
byte a7=1;//1
byte a8='1';//49
System.out.println(a5);
System.out.println(a6);
System.out.println(a7);
System.out.println(a8);
// 补码->原码:(补码-1)->反码->原码
int m=678;//0000 0000 0000 0010 1010 0110
// 丢弃高24位,变为byte类型,二进制位: 1010 0110
System.out.println((byte)m);//1 101 1010 -90
int s=234;//1 110 1010 补码
// 1 110 1001 反码
// 1 001 0110 原码 22
System.out.println((byte)s);//-22