Java基础——数据类型、运算符与结构

1数据类型

在这里插入图片描述
数据运算的最小单位——bit
数据的最小单位——byte

数据类型 大小(单位bit) 对应包装类
byte 8(1个字节) Byte
short 16(2个字节) Short
int 32(4 个字节) Integer
long 64(8个字节) Long
float 32(4 个字节) Float
double 64 (8个字节) Double
char 16 (2个字节) Character
boolean - Boolean

2数据类型转换

基本数据类型互相转换

首先给基本数据类型按照取值范围从小到大排序:
byte < short < int < long < float < double

  • 小的赋值给大的,直接赋值,Java会自动转换;
  • 大的赋值给小的,强制转换,会丢失精度;
  • Java会把小数默认成double
float f = 1.0; //错误写法
float f = 1.0f; //正确写法,后缀f大小写都可以

基本数据类型与包装类互相转换

基本数据类型没有对象的概念,引用数据类型相当于是一个类,具有对象的概念,非常方便操作。
为了方便操作基本数据类型,让基本数据类型也有对象的概念,便有了对应的包装类。

  • 基本数据类型转换为包装类
int i = 10;
Integer j = i; 
//就是如此直接,实际上完整写法是下面这样,只不过Java虚拟机自动搞定了,这个过程称为自动装箱
Integer j = Integer.valueOf(i);
  • 包装类转换为基本数据类型
int k = j;
//同上,这个过程称为自动拆箱
int k = j.intValue();

3 类型与泛型的区别

  • 类型存在多态,泛型没有多态
  • 类型用于约束外部对象的使用场景,泛型用于约束内部对象的使用场景

3运算符

在这里插入图片描述

  • 元素与运算符结合得到表达式,表达式运算结果的类型最小为int,最大为元素类型中最大的那个;
  • 赋值运算符除了=全是复合运算符,特点为运算后数据类型不会变;
  • &和&&的区别?
    &一定执行第二个表达式,&&不一定执行第二个表达式。
    对于&&来说,若第一个表达式为false,结果定为false,不会再去判断第二个表达式。
    |与||的区别同理,对于||来说,若第一个表达式为true,结果定为true。

4结构

分支结构switch

int i = 10;
switch (i) {
    
    
	case 10:
		输出1;
	case 20:
		输出2;
	default:
		输出其它;
}

结果:
1
2
其它

分析:
switch语句会依次根据i值与case作等值判断,当判断成功后,会执行该case后的所有语句,除非用break截断
缺点:
只能做等值判断,范围判断不如if方便

循环结构while与do…while的区别

while(条件){
    
    
	执行语句
}
// 先判断后执行,执行语句最少一次都不执行

do{
    
    
	执行语句
}while(条件)
// 先执行后判断,执行语句最少执行一次

猜你喜欢

转载自blog.csdn.net/weixin_46838605/article/details/129858843