byte, short, int, Long, char数据类型复习
package com.kun.base;/**byte的取值范围:-128~127(-2的7次方到2的7次方-1)short的取值范围:-32768~32767(-2的15次方到2的15次方-1)int的取值范围:-2147483648~2147483647(-2的31次方到2的31次方-1)long的取值范围:-9223372036854774808~9223372036854774807(-2的63次方到2的63次方-1)char:单个字符,无符号整数,取值范围为0至65535(字符编码;输出时会转化为编码所对应的单个字符)*/
public class Demo1 {public static void main(String[] args) {int a = 1;//int表示整数类型 a为一个变量(int声明了a为一个整数变量)a = 1("="将"1"赋值给了a)int b = 2;int c = a + b;System.out.println(c);//将变量 c 的值打印到控制台System.out.println(a - b);System.out.println(a * b);System.out.println(a / b);//输出结果为0 a 和 b 都是整数类型,那么结果也是整数,并且会向下取整System.out.println(a /(double) b);//输出结果为0.5 b 被强制类型转换为 double 类型System.out.println(a % b);//取余 1System.out.println("=======================================");byte a1 = 100;byte b1 = -100;byte c1 = (byte) (a1+b1);System.out.println(c1);System.out.println(a1/b1);System.out.println(a1*b1);//-10000 byte、short、char类型变量参与算术运算时,会先自动提升为int类型/*** byte a1=100 → 提升为int 100** byte b1=-100 → 提升为int -100** 计算100 * (-100) = -10000(int类型结果)*/System.out.println("=======================================");//short 方法与上类似//Long a2 = 10000L;//L 后缀表示这些数值是 long 类型//Long b2 = 20000L;//L 后缀表示这些数值是 long 类型char a5 = '中';//单个字符char b5 = 'A';//单个字符char c5 = (char) (a5 +b5);System.out.println(a5);System.out.println(b5);System.out.println(c5);/*** 变量a2被赋值为字符'中'* 变量b2被赋值为字符'A'* 当执行a2 + b2时,Java会将这两个字符的码值相加,得到结果。* 由于c2被声明为char类型,所以需要对相加的结果进行强制类型转换(char),以便将其赋值给c2。* 强制类型转换可能会丢失精度或导致结果错误,但在这种情况下,结果仍然在char类型可表示的范围内,因此转换是有效的。* 最终,c2的值为字符'乮',这是a2+b2的码值所对应的字符*/char d5 = 1000;//此处默认为字符的码值char e5 = 2000;//此处默认为字符的码值char f5 = (char) (d5+e5);//d2与e2的码值相加3000所对应的字符System.out.println(d5);//字符编码1000 ϨSystem.out.println(e5);//字符编码2000 ߐSystem.out.println(f5);//字符编码3000 ஸ}}