public static void main(String[] args) {
byte a=100; 数据类型为调用数据和内置数据
a=a+1; 会有编译错误,整数运算结果默认都是int类型,int赋值给byte类型,需要强制转换
a++;//不会有错,因为a++会把类型转换也完成。
}
byte:
byte 数据表示是8位的整数;
-128(-2^7)——127(2^7-1);默认值是 0;
byte b1=10;
byte b2=12;
System.out.println("b1+b2="+(b1+b2));
short:
short 数据表示 16 位的整数;
-32768(-2^15)——32767(2^15 - 1);默认值是 0;
short b= 1000;
int:
int 数据表示32位的整数;
-2,147,483,648(-2^31)——2,147,483,647(2^31 - 1);默认值是 0 ;
int c= 1000;
long:
long 数据表示64 位的整数;
-9,223,372,036,854,775,808(-2^63)—— 9,223,372,036,854,775,807(2^63 -1);默认值是 0L;
long a= 100000L;
float:
float 数据表示单精度、32位的浮点数;默认值是 0.0f;
不能用来表示精确的值,如货币;
float f1= 0.2f;
double:
double 数据表示双精度、64 位的浮点数;默认类型为double类型;
不能表示精确的值,如货币;默认值是 0.0d;后面的d可写可不写;
double d1=6846d;
boolean:
boolean数据表示判断;只有两个值:true 和 false;默认值是 false;
boolean c=true;boolean d=false;
char:
char类型表示单一的 16 位 的字符,只能存一个汉字,必须单引号
char j='a';char h='值';
自动换型:byte short chat int long float double由低到高
= 号是赋值运算,相当于把12赋值给了变量a
声明并且赋值
byte a=12;
先声明,再赋值 声明一个变量b,并且设置变量的数据类型是byte
byte b; 把33赋值给变量b 适用于
b=33; 成员变量不可以这样书写,局部变量可以
静态变量,一个静态的状态,就是一个属性。
成员变量,变量定义在方法的外面
动态的行为,一个动态的行为,就是一个方法。
如果定义在方法里面就是局部变量。变量是用来存属性静态的属性的。动态行为是方法。
一个类可以有很多方法,但是两个方法不可以嵌套。
若想调用其它方法,要创建对象:类名 对象的名字=new 构造方法(输入参数,类型);---------构造方法的名字和类的名字一样
只有方法后调用面会有小括号 对象的名字.属性=“”;
byte a=12; 声明一个变量b,并且设置变量的数据类型是byte 先声明后赋值
int c; 把一个byte类型的a赋值给了一个int类型的c 因为从低到高可以自动赋值
c=a;
int d=999; 从高到低需要强制换型
a=(byte)d;
float f1=9.8f;
int f2; 这是直接省略小数
f2=(int) f1;
System.out.println(); 会有编译错误,因为整数情况下是int类型 整数计算过程中会转化为int类型,结果也是int
b是byte类型,int是高转低,需要强制转换
p=(byte)(a+10);