(1).基本数据类型8种:byte short int long float double cahr boolean
【整形】:
byte 1字节 int 4字节
short 2字节 long 8字节
【*使用细节】:
1.整形常量默认为int型,声明long型常量需要在后面加“l”或者“L”
2.bit:计算机中的最小存储单位。 byte:计算机中基本存储单元 ( 1byte=8bit )
【浮点型】:
flaot 4字节
double 8字节
(2).引用类型:类 接口 数组
【*使用细节】1.java的浮点型常量默认是double类型,如果float型常量,需要在后加“f”或“F”.
2.浮点型常量有两种表达形式
十进制数形式:如 6.32 6.320f .632(必须有小数点)
科学计数法形式: 6.32e2【6.32*10的2次方】 6.32E-2【6.32/10的2次方】
【字符类型】
char c1 = 'b'; char c2 = '\t'; char c3 = '好'; char c4 = 17;
【使用细节】
1.java中允许使用转移字符 '\' 讲其后面的字符转变为特殊字符常量 例如 char a='\t';
2.java中char的本质是一个整数,在输出时,输出的是Unicode码对应的字符
3.可以直接给char赋一个整数,输出时,输出的是Unicode码对应的字符【97--a】
【布尔类型】boolean
1.只能取值true和false
2.基本数据类型转换(1)自动类型转换(精度小的类型自动转换为精度大的数据类型)
char->int->long->float->double
byte->short->int->long->float->double
【*细节】
1.有多种类型的数据混合运算时,系统首先自动讲所有的数据转换成容量大的那种数据类型然后再进行计算。
2.精度大的数据类型赋值给精度小的数据类型的时候会报错!
3.(byte,short)和char之间不会相互自动转换
4.byte,short,char 三者可以计算,在计算时首先转换为int类型
5.boolean不参与转换
6.自动提升原则:表达式结果的类型自动提升为 *** 作数中最大的类型
(2)强制类型转换【将容量大的数据类型转换为容量小的数据类型,但可能造成精度降低或溢出】
3.基本数据类型和String 类型的转换1.基本类型转String语法:将基本类型的值+“” 【要确保String类型能转成有效的数据】
例如 int a=1; String b=a+“”er
2.、String 类型转基本数据类型 语法:通过基本类型的包装类调用parseXX方法
二、运算符介绍例如 int a=Integer.parseInt("123");
运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。
1.算术运算符 2.赋值运算符1.运算顺序从右往左
int num = a + b + c;
2.赋值运算符的左边 只能是变量,右边 可以是变量、表达式、常量值
int num = 20; int num2= 78 * 34 - 10; int num3 = a;
3.复合赋值运算符等价于下面的效果比如:
a+=3;等价于 a=a+3; 其他类推
4.复合赋值运算符会进行类型转换。
3.关系运算符 [比较运算符] 4.逻辑运算符byte b = 2; b+=3; b++;
1.短路与 && , 短路或 ||,取反 !
2.逻辑与 &,逻辑或 |,^ 逻辑异或
- 说明逻辑运算规则:
5.位运算符 【需要二进制基础】 6.三元运算符
- a&b : & 叫逻辑与:规则:当 a 和 b 同时为 true ,则结果为 true, 否则为 false
- a&&b : && 叫短路与:规则:当 a 和 b 同时为 true ,则结果为 true,否则为 false
- a|b : | 叫逻辑或,规则:当 a 和 b ,有一个为 true ,则结果为 true,否则为 false
- a||b : || 叫短路或,规则:当 a 和 b ,有一个为 true ,则结果为 true,否则为 false
- !a : 叫取反,或者非运算。当 a 为 true, 则结果为 false, 当 a 为 false 是,结果为 true
- a^b: 叫逻辑异或,当 a 和 b 不同时,则结果为 true, 否则为 false
- && 和 & 使用区别:&&短路与:如果第一个条件为 false,则第二个条件不会判断,最终结果为 false,效率高;&逻辑与:不管第一个条件是否为false,第二个条件都会继续判断,效率低
- ||短路或:如果第一个条件为 true,则第二个条件不会判断,最终结果为 true,效率高; | 逻辑或:不管第一个条件是否为 true,第二个条件都要判断,效率低
条件表达式 ? 表达式 1: 表达式 2;
运算规则:
1.如果条件表达式为 true,运算后的结果是表达式 1;
2.如果条件表达式为 false,运算后的结果是表达式 2;
三、数组- 先声明数组
语法:数据类型 数组名[]; 也可以 数据类型[] 数组名;
int a[]; 或者 int[] a;
- 创建数组
语法: 数组名=new 数据类型[大小];
a=new int[10];
数组使用注意事项和细节
1.数组是多个相同类型数据的组合,实现对这些数据的统一管理
2.数组中的元素可以是任何数据类型,包括基本类型和引用类型,但是不能混用。
3.数组创建后,如果没有赋值,有默认值
int 0,short 0, byte 0, long 0, float 0.0,double 0.0
char \u0000,boolean false,String null
4.使用数组的步骤 1. 声明数组并开辟空间 2 给数组各个元素赋值 3 使用数组
5.数组的下标是从 0 开始的。
6.数组下标必须在指定范围内使用,否则报:下标越界异常,比如
数组赋值机制int [] arr=new int[5]; 则有效下标为 0-4
1.基本数据类型赋值,这个值就是具体的数据,而且相互不影响。
int n1 = 2; int n2 = n1;
2.数组在默认情况下是引用传递,赋的值是地址。
看一个案例,并分析数组赋值的内存图(重点, 难点. )。
//代码 ArrayAssign.java int[] arr1 = {1,2,3};
int[] arr2 = arr1;
二维数组使用细节和注意事项1.一维数组的声明方式有:
int[] x 或者 int x[]
2.二维数组的声明方式有:
int[][] y 或者 int[] y[] 或者 int y[][]
3.维数组实际上是由多个一维数组组成的,它的各个一维数组的长度可以相同,也可以不相同。比如: map[][] 是一个二维数组
int map [][] = {{1,2},{3,4,5}}
由 map[0] 是一个含有两个元素的一维数组 ,map[1] 是一个含有三个元素的一维数组构成,我们也称为列数不等的二维数组
/*韩老师java复习中~*/
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)