存储单位
1 为负数 0 为 整数
所有类型都需要损失一倍的精度
byte 8位 最大值 为 2^7-1 最小值为 -2^7
Byte = -128 ~ 127
Bit = 比特
Byte = 8bit 字节
Short = 2byte = 16bit 短整型
Int = 4byte = 32bit 2147483647 整型
Long = 8 byte = 64bit 长整型
存储
正数 存原码
2对应的二进制为 0000 0010
负数 存补码
-2 : 1000 0010 原码
1111 1101 反码 除了符号位,1变0,0变1
1111 1110 补码 = 反码+1
基本数据类型
数值型
整数型
Byte,short,int,long
浮点型
Float,double
字符型 char
布尔型 boolean
引用数据类型
类,数组,接口
a = 97 b = 98 c = 99 .....
A = 65 B = 66 C = 67......
0 = 48 1 = 49 2 = 50.....
整数型
byte byte1 = 127;
short s1 = 1234;
int i1 = 2147483647;
long l0=2147483647;
long l1 = 2147483648L;
System.out.println(l1);
System.out.println(Integer.MAX_VALUE);
System.out.println(Long.MAX_VALUE);
int i_2 = 012;
System.out.println(i_2);
int i_3 = 0x1f;
System.out.println(i_3);
浮点型
float f1 = 1.2F;
double d1 = 10.2D;
double d2 = 10.2D;
double d3 = 123.321;
System.out.println(10.2);
字符型
short s = 32767;
char c = 35422;
System.out.println(c);
char c1 = '刘';
int i1 = c1;
System.out.println(i1);
char c1 = '\'';
int i_1 = c1;
c1 = '\\';
i_1 = c1;
c1 = 't';
i_1=c1;
c1 = 'n';
i_1=c1;
System.out.println(c1);
System.out.println(i_1);
布尔型
boolean b1 = false;
b1 = true;
类型转换
byte b1 = 12;
short s1= b1;
int i1= s1;
long l1= i1;
b1= (byte) i1;
float f1= l1;
double d1=f1;
char c2= 'a';
i1=c2;
int i_1=257;
byte b_1=(byte)i_1;
System.out.println(b_1);
int a=1;
byte b= 2;
double c= 3.3;
double result= a+b-c;
short s= 2;
int result1= b+b;
变量
System.out.println(10);
System.out.println(10);
int a= 10;
System.out.println(a);
a=11;
System.out.println(a);
System.out.println(a);
final int i= 20;
System.out.println(i);
变量声明
int i=10;
char c_1= '刘';
boolean b_1=false;
System.out.println(i);
{System.out.println(i);
int a=1;
System.out.println(a);
}
作用域
static int age=21;
static String name;
double score;
public static void main(String[] args){
int i=2;
System.out.println(i);
int a;
System.out.println(_09_.age);
System.out.println(age);
System.out.println(name);
}
算术运算符
int a=10;
int b= 3;
System.out.println(a/b);
System.out.println(a%b);
double a1= 0.1;
double a2 =0.2;
System.out.println(a1+a2);
int s= 100;
s=s+++s;
System.out.println(s);
int k=100;
k=++k+k;
System.out.println(k);
k=100;
++k;
System.out.println(k);
int i=2;
i++;
++i;
i=++i+2;
i=i+++2;
int p=2;
p=2+p+++p+p ++ + ++p;
System.out.println(p);
int x=10;
x = 10 + x++ + ++x +(10*x++) + ++x;
System.out.println(x);
关系运算符
int a=10;
int b=11;
boolean result=a<b;
System.out.println(result);
System.out.println(a<=b);
System.out.println(a>b);
System.out.println(a>=b);
System.out.println(a==b);
System.out.println(a!=b);