2021-03-18

今日学习总结:
变量的四种表达方式!
//第一种:直接声明变量类型并赋值
int a =10; //int 是整数类型, a是变量,也就是标识符,10就是字面值
//整句理解为:讲字面值10赋值给标识符变量a,a的类型是int 整数类型。

double d = 20;//double是浮点类型,也就是小数类型,d是变量,20是字面值,=可以理解为赋值。

//第二种:先给变量声明类型,再给初始值。
int b;//先给变量声明类型
b= 11; //再给变量b赋值

//第三种:同一种类型变量,可以给多个变量声明赋值、
int x=10, y =20,z=30,n=40,m=50;(注意变量之间用逗号隔开,编辑代码时都用的是英文符号)

//第四种:同一种类型变量,先声明同类型多个变量,再赋值。
int x,y,z,m,n;(注意用逗号隔开,分号收尾)
x=10;
y=11;
z=12;
m=13;
n=14;

特别注意:变量都是在方法体中(public static void main(String[] args){},这里{}就是main方法的方法体)编辑的,声明完并且要赋值,不然是无法成功输出的。必须满足声明变量类型和赋予初始值才能成功输出。

八种基本数据类型!
基本数据类型总共有 :整数数据类型,浮点数(小数)数据类型,字节数数据类型,逻辑数据类型。

整数数据类型:byte,short,int,long.
浮点数(小数)数据类型:float(单精度),double(双精度).
字节数据类型:char
逻辑数据类型:boolean

各个基本数据类型的范围:

最小的就是byte:范围是-128到127之间。【记住】
Short: 记住±3万左右的范围。
Int :正负21亿左右的范围。
Long:很大很大。

案例:byte b = 4;
short s = 2999;
int s = 10000000;
long l =999999L

如上编译代码会正常编译成功。

byte b = 128;//编译出错,因为byte的范围是-128到127之间,超过了范围。
Short s = 39999;//编译出错,超出范围
Int i = 2222222222;//编译出错,超出范围。
Long l = 2222;//编译出错,特别注意。

Long 的范围非常大,但是要记住,系统默认的是int类型。也就是在给long赋值2222的时候,系统把2222放到int类型容量中,再生成一个变量为l的long类型容量,最后才把2222从int中转到long容量中去。由于long的范围比较大,int比long小,大转小容易造成溢出(数据损失),所以系统默认编译出错。输出失败。

特别注意:整数数据类型使用时,系统默认数据类型为int,所以再使用long数据类型时,要在后面加上L。记住用Long类型加L就好了

float和double是小数数据类型。要清楚,小数是比整数范围要大的,所以float和double的范围都比long还要大,double比float的范围还要宽广。
Float f = 3.14;//编译失败,系统无法输出,理由如上。
Double d = 3.1415926;;//编译成功,范围之中

Float f = 3.1415f;//编译成功,成功输出。

特别注意:浮点数据类型使用时,系统默认使用double类型,使用float类型时,记得加上f/F,理由和上面long的道理一样,系统默认为double,double是双精度,转到float会造成精度的损失,所以系统默认输出失败。

char的范围是0到65535.【记住】

Char 的输入要满足 :单引号,单个汉字/单个字母 。

案列:char c = ’a’;
char c1 = ‘中’;
以上为正常书写。

Char d =’hello’;//输出失败,hello不是单个字母。
Char f = ‘中国’;//输出失败,只能是单个汉字。
Char g = “a中”;//输出失败,只能是单个字母/汉字,最重要的是单引号。

范围比较:byte < short(char) < int < long < float < double

各个数据类型的单位(字节)

Byte 1字节
Short 2字节
char 2字节
Int 4字节
Long 8字节
Float 4字节
Double 8字节

Boolean 1字节(boolean只有true和false两种结果)

boolean = false;
boolean = true;

数据类型转换
数据类型转换分为自动转换和强制转换。

自动转换条件:范围小的数据类型向范围大的数据类型转换。
案例:
byte b = 12;
Short s = b;

byte b = 12;
Int i = b;//输出成功,自动转换,小范围的转大范围的。

强制转换条件:大范围转小范围:

案例:int a = 10;
Byte b = a;//输出失败,溢出现象,造成数据损失。
Short s = 12;
Byte b =s;//输出失败,溢出现象,造成数据损失。

修正:加上强制转换符。
Int a = 10;
Byte b =(byte)a;

Int a = 10;
Short b =(byte)a;//byte转short为小转大。

Short s =12;
Byte b = (byte)s;
注意:强制转换 要转换为哪个类型,强制转换符的范围最低为本类型。

千万要注意啦:如果 byte short char在运算中,那么一定要切记系统默认数据类型为int.
Byte b =12;
Short s = 13;
Short a = b+s;//注意,这种是输出失败的,切记啦,一定要记得系统默认的数据类型是int;记住byte,short,chars这三个在运算的时候,系统是默认为int。也就是在第三步short a =b+s时,此处的b和s是int类型,所以short a = b+s;会显示错误。此时就需要强制转换啦。
Short a =(short)(b+s);若为自动转换,则 不必理会,即把第三步改成int a或者long a就是自动转化啦。
更要记住:两个不同类的数据运算时,结果的类型是那个范围大的数据类型。
例:double d = 3.14159;;
Int i = 9;
Double C = d+ i;
c在不强转的情况下就是double类型。
如果输入 int c = d +i;那么一定会报错。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值