博客
关于我
编程思想_操作符
阅读量:717 次
发布时间:2019-03-21

本文共 1576 字,大约阅读时间需要 5 分钟。

1. 操作符

操作符是Java中数据操作的基础。在Java中,操作符接收一或多个参数并生成一个新的计算结果。

2. 优先级

在包含多个操作符的表达式中,运算顺序由优先级决定。Java的优先级顺序是先乘除后加减,最高优先级的运算符优先执行。

3. 赋值

赋值操作是变量获取数据的主要方式。基本数据类型赋值时直接赋数值,而对象赋值则是一个引用传递,两个变量指向同一个对象。

4. 自动递增和递减

Java中的自增和自减操作符(++和--)有两种形式: - 举例: - 前缀形式(+i 或 -i):先执行翻转操作,再增加。 - 后缀形式(i++ 或 i--):先增加或减少,然后生成结果。在代码中通常使用先执行逻辑运算符后修改变量的值。 例如:
int i = 2;  System.out.println("i++:" + i++);  // 输出:i++:3  System.out.println("i:" + i);  // 输出:i:3

5. 关系操作符

关系操作符(如 == 和 != )用于比较两个操作数的值。需要注意的是,使用 == 进行对象比较时,会比较对象的引用地址,而不是逻辑值。要比较对象的实际内容需要使用 equals 方法。例如:
Integer n1 = new Integer(47);  Integer n2 = new Integer(47);  // 比较引用:n1 == n2 → false  // 使用 equals 比较值:n1.equals(n2) → true

此外,Integer 类的 equals 方法会在特定范围内(如 -128 到 127)缓存常见值。

Boolean比较:

  • f1 == f2 → 当 f1 和 f2 是同一个对象实例,且值为同一个常数且在 Integer 的缓存范围内时,才返回真。
  • 当两个变量是相同的值但不是同一对象时,比较通常会返回 false,除非它们被缓存或者有特殊处理。

6. 逻辑操作符

逻辑运算符包括与(&)、或(|)、非(!)等。 - 逻辑与与运算:在任何一边为 false 时,无论另一边是否为 true,整个布尔表达式都会短路为 false。例如: ```Java boolean a = true; boolean b = false; System.out.println(a && b); // false System.out.println(a || b); // true System.out.println(!a); // false ``` - 逻辑非运算:将 true 转换为 false 或 false 转换为 true,一次操作即可完成。

7. 三元操作符

三元操作符(ternary operator)是选择值的简洁表达式,语法格式为: ```java booleanExp ? value0 : value1 ``` 其中,booleanExp 的结果决定了哪个值被选择。如果 booleanExp 为 true,则计算并返回 value0;否则,返回 value1。

8. 类型转换操作符

类型转换分为两种: - 窄化转换:将一个更宽的数据类型转换为更窄的数据类型,这可能导致精度丢失。例如: ```java int a = 30000; short s = a; // 生成错误:int 到 short 需要展开为 short a = ( short ) a; ``` - 扩展转换:将一个更窄的类型转换为更宽的类型,不会丢失精度。例如: ```java short s = 30000; int a = s; // 自动扩展,不需写(bitmask) ```

要注意的是,除 boolean 外,基本数据类型之间可以相互转换。

转载地址:http://bxprz.baihongyu.com/

你可能感兴趣的文章
MySQL5.7.37windows解压版的安装使用
查看>>
mysql5.7免费下载地址
查看>>
mysql5.7命令总结
查看>>
mysql5.7安装
查看>>
mysql5.7性能调优my.ini
查看>>
MySQL5.7新增Performance Schema表
查看>>
Mysql5.7深入学习 1.MySQL 5.7 中的新增功能
查看>>
Webpack 之 basic chunk graph
查看>>
Mysql5.7版本单机版my.cnf配置文件
查看>>
mysql5.7的安装和Navicat的安装
查看>>
mysql5.7示例数据库_Linux MySQL5.7多实例数据库配置
查看>>
Mysql8 数据库安装及主从配置 | Spring Cloud 2
查看>>
mysql8 配置文件配置group 问题 sql语句group不能使用报错解决 mysql8.X版本的my.cnf配置文件 my.cnf文件 能够使用的my.cnf配置文件
查看>>
MySQL8.0.29启动报错Different lower_case_table_names settings for server (‘0‘) and data dictionary (‘1‘)
查看>>
MYSQL8.0以上忘记root密码
查看>>
Mysql8.0以上重置初始密码的方法
查看>>
mysql8.0新特性-自增变量的持久化
查看>>
Mysql8.0注意url变更写法
查看>>
Mysql8.0的特性
查看>>
MySQL8修改密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
查看>>