博客
关于我
编程思想_操作符
阅读量: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/

你可能感兴趣的文章
Nginx + Tomcat + SpringBoot 部署项目
查看>>
Nginx + uWSGI + Flask + Vhost
查看>>
Nginx - Header详解
查看>>
nginx - thinkphp 如何实现url的rewrite
查看>>
Nginx - 反向代理、负载均衡、动静分离、底层原理(案例实战分析)
查看>>
Nginx - 反向代理与负载均衡
查看>>
nginx 1.24.0 安装nginx最新稳定版
查看>>
nginx 301 永久重定向
查看>>
nginx 301跳转
查看>>
nginx 403 forbidden
查看>>
nginx connect 模块安装以及配置
查看>>
nginx css,js合并插件,淘宝nginx合并js,css插件
查看>>
Nginx gateway集群和动态网关
查看>>
nginx http配置说明,逐渐完善。
查看>>
Nginx keepalived一主一从高可用,手把手带你一步一步配置!
查看>>
Nginx Location配置总结
查看>>
Nginx log文件写入失败?log文件权限设置问题
查看>>
Nginx Lua install
查看>>
nginx net::ERR_ABORTED 403 (Forbidden)
查看>>
vue中处理过内存泄露处理方法
查看>>