Java从菜鸟到高手①

目录

1.数据类型

2.定义变量

2.1.编码方式

2.2.布尔型变量boolean

2.3.隐式类型转化和强制类型转化

2.4类型提升

3.字符串类型

4.运算符

4.1.取余

4.2. += ,-=

4.3逻辑运算&& || !

4.4.位运算

4.5.条件运算符


1.数据类型

  • Java中,数据类型的大小与平台位数无关,可移植性很高
  • Java中,boolean为布尔类型,真为true,假为false,0为假,非0为真在Java中错误,布尔类型在Java中没有明确的大小
  • Java中,没有所谓的无符号数字

2.定义变量

  • byte,short,int,long都可以用来定义整型变量
  • Java中,任何变量在使用前一定要初始化,否则编译报错
  • Java没有全局变量
  • long定义变量时,在初始值后面加L:long a = 10L
  • float定义变量时,在初始值后面加f:float a = 10f
  • Java中,直接赋值时,如果赋值的字面值大于该类型所能表示的最大值,编译器会报错
  • 浮点数和整数在内存中的存储方式不同,任何浮点数都不能精确保存
  • 一个汉字两个字节,而Java中char类型占两个字节,所以char c = '王';可以正常输出
2.1.编码方式

C语言采用ASCII码编码方式,范围0~127,只能表示英文相关的字符,而Java采用unicode编码方式,不仅可以表示英文,还可以表示其他更多语言,unicode包含了ASCII

在c中,char为1个字节,默认为有符号类型,范围0~127

在Java中,char为2个字节,范围0~65535

2.2.布尔型变量boolean

1.布尔类型的变量只有两种取值,true表示真,false表示假,Java当中的布尔类型不能和int转化,不存在0表示假,非0表示真这样的用法,布尔类型不能和任意类型进行强制类型转化

2.3.隐式类型转化和强制类型转化

1.类型表示范围小的赋值给范围大的:隐式转换

2.类型表示范围大的赋值给范围小的:强制类型转化,但可能精度丢失

3.强制类型转化不一定成功,不相干的类型不能进行转化

2.4类型提升

1.Java中,不同类型的数据进行相互运算时,数据类型小的会被提升为数据类型大的

2.int和long之间:int会被提升为long

int a = 10;
long b = 20;
int c = a + b;//错误
//正确写法
int c = (int)(a+b);
long d = a + b;

byte和byte运算:

byte a = 10;
byte b = 20;
byte c = a + b;//错误
//正确写法
byte c = (byte)(a + b);
int c = a + b;

Java中,对于 short, byte 这种比 4 个字节小的类型, 会先提升成 4 个字节的 int , 再运算

3.字符串类型

1.String,c中只有字符串,没有字符串类型,而Java有字符串类型

2.String arr = "hello world",Java当中,字符串不是以'\0'结尾的

3.1.将int->String

int a = 10;
String arr = a + "";

当字符串和整数放在一起使用加号的时候,+就是一个拼接的意思

4.运算符

4.1.取余

C语言中,%的左右操作数必须为int,Java中,%左右操作数可以为小数,但没有意义,一般都是对整数取模

4.2. += ,-=
int a = 10;
double b = 12.5;
a = a + b;//错误
//正确
a += b;//自动将a + b的结果转化成int再赋给a

+=,-=,可以自动帮我们进行类型的转化的

4.3逻辑运算&& || !

4.3.1逻辑与&&

布尔表达式1 && 布尔表达式2

  • 两表达式都必须为布尔表达式
  • 如果第一个表达式为假时,就不会去执行第二个表达式(短路与)

4.3.2.逻辑或 ||

布尔表达式1 || 布尔表达式2

  • 两表达式都必须为布尔表达式
  • 如果第一个表达式为真时,就不会去执行第二个表达式(短路或)

4.3.3. | 和 &

  • 当& 和 | 的左右两边都是布尔表达式时,执行&& 和 || 的功能,但没有短路功能

4.3.4逻辑!

4.4.位运算

4.4.1.& 和 |

4.4.2.移位运算符

  • <<:高位丢弃,低位补0,* 2 ^ n
  • >>:低位丢弃,高位补符号位,/ 2 ^ n
  • >>>:无符号右移,低位丢弃,高位补0,没有无符号左移
4.5.条件运算符

布尔表达式1 ? 表达式2 :表达式3

如果表达式1成立的话,执行表达式2,否则执行表达式3

  • 30
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值