基本概念
- 一个源文件只能有一个public类,其他类的个数不限。编译后,每一个类都对应生成一个 .class 文件
- 源文件名与public类同名
- javadoc注释
- 文档注释用终端生成html文件命令:
- Java程序中 “+” 的使用
- 当左右两边都是数值型时,做加法运算
- 当左右两边有一方为字符串,则做拼接运算
数据类型
引用类型
- 类
- 接口
- 数组
浮点数
- Java默认浮点数是double类型,float类型要在数值后加 f/F
- Java浮点类型保留小数点后位数
- float – 保留小数点后7位 – C语言中保留6位
- double – 保留小数点后16位 – C语言中保留15位
- 字符和编码时一一对应的
- Java中不可以用0和非0来替代false和true,这点与C语言不同。
- Boolean只能是true或者false 不能是0或者1
基本数据类型转换
自动类型转换
- 低精度向高精度自动转换
- byte==>short==>int==>long==>float==>double
- char==>int==>long==>float==>double
强制类型转换
- 高精度类型向低精度类型转换,由编写代码的人使用强制转换符 **()**进行类型转换,同时转换过程中会造成精度损失
- C语言中直接通过赋值 就能进行类型转换,但是也会造成精度损失,编译可以通过,但是编译器会提示警告。C语言也可以用强制类型转换符 ( 进行有精度损失的强制类型转换)
- Java中高精度类型向低精度类型转换必须使用强制转换符 (),会造成精度损失,否则编译无法通过,直接提示错误。
- 强制类型转换符只对最近的操作数有效,这点与C语言相同,C语言中是因为**()**运算符优先级高。
- char类型可以保存 int 类型的常量值,但是不能保存 int 类型的变量值(需要强制转换)。这点与C语言不同
- C语言中** 只要被char保存的值在其范围内,就可以保存,无论变量值还是常量值**;这点原因还是因为C语言中直接通过赋值 就能进行类型转换
- byte进行运算时,当作int类型处理,运算结果用int接收
- Short进行运算时,当作int类型处理,运算结果用int接收
- char进行运算时,当作int类型处理,运算结果用int接收
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-881UZUUn-1652873405290)(https://cdn.jsdelivr.net/gh/MCXXHYK/PicGo/202205121717674.png#crop=0&crop=0&crop=1&crop=1&id=HDf9U&originHeight=896&originWidth=1356&originalType=binary&ratio=1&rotation=0&showTitle=false&status=done&style=none&title=)]
基本数据类型和字符串的转换
1.** 基本数据类型转字符串**:加 “”
-
**字符串转基本数据类型 **
- 语法:通过基本数据类型的包装类调用parseXXX方法即可
关系运算符 instanceof:检查是否是类的对象,返回值为true和false
短路与 && 、逻辑与 & 区别
- 短路与有一个条件为假,后面条件直接不用判断,且后面代码不再执行,结果返回假;
- 逻辑与必须要把所有条件都判断完,才会返回结果 效率低
短路或 ||、逻辑或 | 区别
- 短路或有一个条件为真,后面条件直接不用判断,且后面代码不再执行,结果返回真;
- 逻辑或必须要把所有条件都判断完,才会返回结果 效率低
tips:**复合赋值运算符再进行计算时会进行类型转换 **
byte b1 = 123;b1 += 1; //等价于 b1 = (byte)(b1 + 1); //分析:按理说 b1 += 1;右边是 b1 +1 ==>int 赋值给左边byte会发生错误, //但是这里其实复合赋值运算符进行运算是会自动进行类型转换的//b1++也是如此//b1++等价于 b1 = (byte)(b1+1); 也会发生类型转换//细节int i = 1;i = i++; //1) temp = i ; 2) i = i +1; 3) i = temp; 执行顺序是这样的System.out.println(i); //1int j = 0;j = i++; //1) temp = i ; 2) i = i +1; 3) j = temp; 执行顺序是这样的 j=1int a = 1;a = ++a;System.out.println(a); //2 执行顺序 1) a = a +1; 2) temp = a ; 3) a = temp;
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!