javaSE-运算符-标识符(类名/关键字/变量/)-基本/引用数据类型
运算符:【一、算术运算符】,【二、关系运算符】,【三、逻辑运算符】,【四、赋值运算符】,【五、三目运算符】
一、三元运算符/三目运算符号/条件运算符
- 1、语法规则: 布尔表达式 ?表达式1 (true选1作为表达式结果):表达式2(false选2表达式作为结果);
- 2、三元运算符的执行原理:
- 当布尔表达式结果是true,选择表达式1作为整个表达式的执行结果
- 当布尔表达式结果是false,选择表达式2作为整个表达式的执行结果
二、算术运算符
- 1、算术运算符:【sum 加:+ 】 【sub 减:-】【mul 乘 :*】【div 求余取模 : % 】
- 2、【自加1: ++ 】
- “++”出现在变量前:先自加“1” 然后赋值给左边变量 int i=10; int x=++i; 输出结果:i=11 x=11
- “++”出现在变量后:先给左边变量赋值,然后在进行自加“1” int i=10; int x=i++; 输出结果:i=11 x=10
- 3、【 +】运算符在Java语言当中的两个作用:加法运算符,求和; 字符串的连接运算
- 【求和】(数字 + 数字-->数字)
- 【字符串连接】(数字 + 字符串-->字符串)
三、关系运算符
- 1、关系运算符:【大于 > 】 【大于等于 >= 】【小于 <】【小于等于 <=】【等于 == 】【不等于 !=】
- 2、关系运算符规则:所有的关系运算符的运算结果都是布尔类型boolean,不是true就是false,不可能是其他值。
- 3、java语言中: 【 = 赋值运算符 】【 == 关系运算符 ,判断是否相等 】
- 4、关系运算符中如果有两个符号的话,两个符号之间不能有空格。>= 这是对的, 【> = 这是不对的中间有空格】。
四、逻辑运算符
- 1、【 & 逻辑与】 【并且】(两边算子都是true,结果才是true)
- 2、【 | 逻辑或】 【或者】(两边的算子只要有一个是true,结果就是true)
- 3、【 ! 逻辑非】 【取反】(!false就是true,!true就是false,这是一个单目运算符)
- 4、【 ^ 逻辑异或】 【异或】 (两边的算子只要不一样,结果就是true;两边算子都一样就是:false)
- 5、【 && 短路与 】 【短路与】左边表达式结果是false错误的;右边没必要执行 ;
- 6、【 || 短路或】 【短路或】左边表达式结果是true正确的,右边就没必要执行;
- 7、【 & 和 &&区别】 & 与并且:无论左边结果是什么,右边都参与运算。&&: 短路与,如果左边为false,那么右边不参数与运算。
- 8、【 | 和|| 区别】 |或: 两边都运算。 ||:短路或,如果左边为true,那么右边不参与运算。
- 9、逻辑运算符,要求两边的算子都是布尔类型,并且逻辑运算符最终的运算结果也是一个布尔类型。
五、赋值运算符
- 1、【加等于 +=】 【减等于 -=】 【乘等于 *=】 【余数等于 %=】 【不等于 !=】
- 2、把左边和右边做加法,然后赋值给左边;
- int a =3;
- a += 4;
- a变量追加3(累加3+4);输出结果为:7;+= 运算符相当于a = a + 4;
- 3、赋值类的运算符优先级:先执行等号右边的表达式,将执行结果赋值给左边的变量
六、Java中的注释:
- java语言为了支持全球所有的文字,采用了一种字符编码方式叫做unicode编码。unicode编码统一了全球所有的文字,支持所有文字。
- ASCII('a'是97 'A'是65 '0'是48)
- 1、单行注释: // 只注释当前行
- 2、多行注释: /* 注释1 注释2 */
- 3、javadoc注释:注意:专业注释,该注释信息会被 javadoc.exe工具解析提取并生成帮助文档) /** javadoc注释 */
七、Identifier 标识符(Identifier)命名规范:
- 标识符只能由:数字(不能作为开头)、字母(a-z A-Z)、下划线、美元符号:$;构成
- 标识符严格区分字母大小写;
- 关键字不能作为标识符;例如public static void main
- 标识符要见名知意,遵守驼峰命名方式
- 数字不能作为标志符开头
- 类名是标识符,标识符“中”不能有空格 例如:Hello World(错误中间有空格)
标识符(Identifier)命名要求:
- 类名、接口名----------->每个单词首字母都要大写
- 常量名------------------->所有字母大写,单词之间使用下划线链接
- 变量名、方法名 ------->第一个单词首字母小写,第二个开始每个单词首字母大写
- 关键字 ------------------>所有的单词全部都小写
- 见名知意 ,遵循驼峰命名方式
八、关键字:
- 关键字:sun公司在开发Java时,提前定义好了一些具有特殊含义的单词,
- Java语言中所有的关键字都是小写;具有特殊含义,不能作为标识符,
- Java语言中是严格区分大小写的:Public和public不一样
- 1、变量实质:是内存中存储数据的基本单元;本质上是一块内存空间,用于存储常量数据;包含数据类型、名称、字面值
- 2、变量要求:变量中存储的具体数据必须与“变量数据类型”一致,否则会报错
- 3、变量作用:内存空间得到了重复的使用:变量必须先声明,在赋值,才能能访问, int i;程序执行到这里,内存空间并没有开辟出来,变量i便没有初始化,所以没有赋值之前是无法访问的
- 4、变量三要素:变量的数据类型、变量的名字、变量中保存的值
- 5、变量名属于标识符:首字母小写,后面每个单词首字母大写,遵循驼峰命名方式,见名知意。
- 6、局部变量:在方法体中声明的变量(注意:局部变量只在方法体当中有效,方法体执行结束该变量的内存就释放了。)
- 成员变量:在方法体制外【类体制内】的变量
- 7、关于变量的作用域,大家可以记住一句话:出了大括号就不认识了。
- 8、java中有一个变量访问有一个很重要的原则:就近原则。(不仅java中是这样,其它编程语言都有这个原则。)哪个离我近,就访问哪个。
十、数据类型
- 1、引用数据类型:数组、类、接口(String:字符串型属于引用数据类型,不属于基本数据类型)
- 2、基本数据类型:整数型:byte-->short--> int--> long 浮点型:float-->double 布尔型:boolean 字符型:char
十一、基本数据类型使用注意事项
- 2、在java中:在任何情况下,(数字)整数型的“字面量/数据”默认被当做int类型处理。
- 3、浮点型“字面量/数据”默认当作double双精度浮点类型处理
- 5、byte、char、short做混合运算的时候,各自先转换成int再做运算。
- 7、char+short+byte 这个除外。因为char + short + byte混合运算的时候,会各自先转换成int再做运算。
11-1 基本数据类型char
- 1、char 变量 = 'a';只能是一个字母或正数;小数不行(1.8);两个汉字不行;两个字母不行'ab';单引号里面只能是一个字符
- 2、char x = 97;这个java语句是允许的,并且输出的结果是'a'
- 3、整数赋值给char类型变量,自动转换成char字符型,结果是一个字符。当整数没有超出byte short char的取值范围,整数可以直接赋值给byte short char类型的变量。
- short和char实际上容量相同,不过char可以表示更大的数字。因为char表示的是文字,文件没有正负之分,所以char可以表示 更大的数字。
11-2基本数据类型 : int / float / double
- 1、在Java语言中“整数型字面值”被默认当作:int 类型处理,要让“整数型字面值”当作long类型需要在后面添加“L”
- 2、在Java语言中一个小数默认当作double类型值,如果为:float变量时需要在小数后面添加:F或f
11-3、数据类型之间的转换
- 1、boolean布尔数据类型不能与其他类型数据进行转换,其都能互相转换
- 2、自动转换:小容量向大容量转换
- 3、强制类型转换:大容量向小容量转换;小容量加括号;(小转大自动转 ;大转小强制转,小容量加括号;)
- 4、任何浮点型数据,无论占用多少字节,都比整数型容量大
- 5、强制类型转换:直接输出,小容量加括号,后面跟需要输出的变量System.out.println((int)fl);
11-4、转义字符反斜杠---> \
- “\”反斜杠 : \转义字符,出现在特殊字符前面,会将特殊字符转为普通字符
- \n------------------------------>换行
- \t ------------------------------>制表符tab
- \\------------------------------>普通反斜杠
- \'------------------------------>普通单引号
- \"---------------------------->普通双引号
十二、引用数据类型:包装类
- 1、八种包装类属于引用数据类型,父类是Object。将基本数据类型 -(转换为)->引用数据类型(装箱),将引用数据类型--(转换为)-> 基本数据类型(拆箱)
- 2、Integer 包装类构造方法有两个: 第一个:Integer(int)---->Integer(234); 第二个:Integer(String)-----> Integer("123");
- 3、整数型常量池:java中为了提高程序的执行效率,将[-127到128](共计255个对象)之间所有的包装对象提前创建好,放到了一个方法区的“整数型常量池”当中了,目的是只要用这个区间的数据不需要再new了,直接从整数型常量池当中取出来。原理:x变量中保存的对象的内存地址和y变量中保存的对象的内存地址是一样的。
十三、基本数据的容量大小排序;取值范围;以及对应的包装类
- byte和boolean是1个字节,short和char是2个字节,int和float是4个字节,long和double是8个字节
- (1个字节)byte: [-128 ~ 127] (2个字节)short: [-32768 ~ 32767] 可以表示65536个不同的数字
(4个字节)int: [-2147483648 ~ 2147483647]
(2个字节)char: [0~65535] 可以表示65536个不同的数字
基本 数据 类型 |
基本 数据 类型 |
占用 字节 |
默认值 | 取值范围 | 对应的包装类属于 (引用数据类型) |
整数型 | byte | 1 | 0 | -128-127 | Byte |
short | 2 | 0 | -3228-3227 | Short | |
int | 4 | 0 |
-2147483648-2147483647 |
Integer | |
long | 8 | 0L | Long | ||
浮点型 | float |
4 |
0.0 | Float | |
double | 8 | 0.0 | Double | ||
布尔型 | boolean | 1 | false/true | Boolean | |
字符型 | cahr | 2 | u\0000 | 0-65535 | Character |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix