前言
Hello,大家好!很开心与你们在这里相遇,我是一个喜欢文字、喜欢有趣的灵魂、喜欢探索一切有趣事物的女孩,想与你们共同学习、探索关于IT的相关知识,希望我们可以一路陪伴~
1. 类型转换
1.1 自动类型转换
- 什么是自动类型转换?
把一个表示数据范围小的数值或者变量赋值给另一个表示数据范围大的变量。这种转换方式是自动的,直接书写即可。
- 示例
1.2 强制类型转换
- 什么是强制类型转换?
把一个表示数据范围大的数值或者变量赋值给另一个表示数据范围小的变量。
- 强制类型转换格式
目标数据类型 变量名 = (目标数据类型)值或者变量;
- 示例
- 数据范围
- 强制类型转换注意事项
1. char类型的数据转换为int类型是按照码表中对应的int值进行计算的。比如在ASCII码表 中,'a'对应97。
2. 整数默认是int类型,byte、short和char类型数据参与运算均会自动转换为int类型。
3. boolean类型不能与其他基本数据类型相互转换。
2. 运算符
- 什么是运算符?
运算符
对常量或者变量进行操作的符号,注意符号都是特定,不能改变量。
表达式
用运算符把常量或者变量连接起来符合java语法的式子就可以称为表达式。 不同运算符连接的表达式体现的是不同类型的表达式。
举例说明
2.1 算术运算符
【 注意:整数操作只能得到整数,要想得到小数,必须有浮点数参与运算。】
2.1.1 "+"号运算符操作
- char类型参与算术运算
使用的是计算机底层对应的十进制数值。需要我们记住三个字符对应的数值:
- 'a' -- 97 a-z是连续的,所以'b'对应的数值是98,'c'是99,依次递加
- 'A' -- 65 A-Z是连续的,所以'B'对应的数值是66,'C'是67,依次递加
- '0' -- 48 0-9是连续的,所以'1'对应的数值是49,'2'是50,依次递加
- 示例
2.1.2 算术表达式
算术表达式中包含不同的基本数据类型的值的时候,整个算术表达式的类型会自动进行提升。
- 提升规则
等级顺序:byte,short,char --> int --> long --> float --> double
- 示例
2.1.3 字符串的”+“操作
当“+”操作中出现字符串时,这个”+”是字符串连接符,而不是算术运算。在”+”操作中,如果出现了字符串,就是连接运算符,否则就是算术运算。当连续进行“+”操作时,从左到右逐个执行。
- 示例
2.2 赋值运算符
赋值运算符的作用是将一个表达式的值赋给左边,左边必须是可修改的,不能是常量。
【 注意:扩展的赋值运算符隐含了强制类型转换。】
2.3 自增自减运算符
注意事项:
- ++和-- 既可以放在变量的后边,也可以放在变量的前边。
- 单独使用的时候, ++和-- 无论是放在变量的前边还是后边,结果是一样的。
- 参与操作的时候,如果放在变量的后边,先拿变量参与操作,后拿变量做++或者--。
- 参与操作的时候,如果放在变量的前边,先拿变量做++或者--,后拿变量参与操作。
- 最常见的用法:单独使用。
示例:
2.4 关系运算符
关系运算符有6种关系,分别为小于、小于等于、大于、等于、大于等于、不等于。最终于的结果是boolean类型。
注意事项:
- 关系运算符的结果都是boolean类型,要么是true,要么是false。
- 千万不要把"=="误写成"=","=="是判断是否相等的关系,"="是赋值。
2.5 逻辑运算符
逻辑运算符把各个运算的关系表达式连接起来组成一个复杂的逻辑表达式,以判断程序中的表达式是否成立,判断的结果是 true 或 false。 最终的结果也是boolean。
- 示例:
2.6 短路逻辑运算符
在逻辑与运算中,只要有一个表达式的值为false,那么结果就可以判定为false了,没有必要将所有表达式的值都计算出来,短路与操作就有这样的效果,可以提高效率。同理在逻辑或运算中,一旦发现值为true,右边的表达式将不再参与运算。
注意事项:
- 逻辑与&,无论左边真假,右边都要执行。
- 逻辑或|,无论左边真假,右边都要执行。
- 短路与&&,如果左边为真,右边执行;【如果左边为假,右边不执行】。
- 短路或||,如果左边为假,右边执行;【如果左边为真,右边不执行】。
示例:
2.7 三元运算符
三元运算符语法格式
数据类型 变量=关系表达式 ? 表达式1 : 表达式2;
- 格式解析
问号前面的位置是判断的条件,判断结果为boolean型,为true时调用表达式1,为false时调用表达式2。其逻辑为:如果条件表达式成立或者满足则执行表达式1,否则执行第二个。
- 示例
- 需求:比较两个数的最大值
3. 键盘录入
我们可以通过 Scanner 类来获取用户的输入。使数据达到灵活性。
使用步骤:
1. 导包
Scanner 类在java.util包下,所以需要将该类导入。导包的语句需要定义在类的上面。
2. 创建Scanner对象
3. 接受数据
- 示例
- 需求:获取两个数中的最大值
未来很长,但有你,我不孤单~ 喜欢我就关注我叭~
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/4230.html