Java 类型转换和运算符计算

简介: Java 类型转换和运算符计算

一、类型转换

1、转换类型 --自动和强转

1)、默认自动类型转换

55d8352a45d30dc6aceca7d694c3990.png


(1)类型自动转换

这里是byte和int在二进制图表显示

c8008690682db15c9301585ce3e6bf6.png

自动转换案例

91a2f120c2895a9855b054e95768b92.png


2)强制类型转换

double向float运行程序会报错,因为二进制存储精度不同会导致损失

53141c2c1b1b3106872fb45ec6bb9db.png

强制转换

数据类型 变量1 = (强转数据类型)变量2

double a = 5.366547885321;
float b = (float)a;

c0dfaf264fc36e0654089ca6ab05876.png

二、运算符计算

1、算数运算符表

c77f4feff88ff4eb27c40aada3cc230.png

17eac33a70c823f9f3c9f9bdabbcd40.png


2、自增自减运算符 ++ –

++、-- 可以在变量的前面,也可以在后面

1)先++,后++

 

        int a = 5;
        int b = ++a;    // ++变量 先+1再计算   5+1=6
        int c = a++;    // 变量++ 先计算再+1   6
        System.out.println(b);
        System.out.println(c);
        结果:b=6,c=6

2)后++,先++

 

        int a = 5;
        int b = a++;    // 变量++ 先计算再+1  a是5,然后+1 结果是5
        int c = ++a;    // ++变量 先+1再计算  先+1a是7  结果是7
        System.out.println(b);
        System.out.println(c);
        结果:b=5,c=7

3)混战结果 现在++、–不用纠结了,用的很少,理解下就好

 

        int a = 5;
        int b = 10;
        int c = ++a + a++ - --b + b--;   //6+6-9+9=12
        System.out.println(c);
        结果:12

三、关系运算符表 "=="相等 "="赋值


473cecc1cfe22fd99204ba35cf363cd.png

四、逻辑运算符表

不同点:逻辑与 “&” 、逻辑或“|”: 无论左边是 false还是 true,右边都要执行。

注意:实际开发中、常用的逻辑运算符还是:&& 、 || 、 !

9cd19da12f1609d9d8aba593160b97e.png

f04d83f28f76010568fff3934035a9d.png



五、三目运算符

格式:条件表达式 ? 值1 : 值2;

执行流程:首先计算关系表达式的值,如果值为true,返回值1,如果为false,返回值2。

        int a = 5;
        int b = 10;
        System.out.println(a>b?a:b);
        结果:10

六、运算符优先级表

    712c24a3cc40399cf30718be2f2876e.png

        int a = 5;
        int b = 10;
        int c = 9;
        int d = 33;
        int e = a + b * c / a - (a+d);  //5 + 18 - 38
        System.out.println(e);
        结果:-15


相关文章
|
16天前
|
前端开发 JavaScript Java
java常用数据判空、比较和类型转换
本文介绍了Java开发中常见的数据处理技巧,包括数据判空、数据比较和类型转换。详细讲解了字符串、Integer、对象、List、Map、Set及数组的判空方法,推荐使用工具类如StringUtils、Objects等。同时,讨论了基本数据类型与引用数据类型的比较方法,以及自动类型转换和强制类型转换的规则。最后,提供了数值类型与字符串互相转换的具体示例。
|
3月前
|
Java
Java运算符
Java运算符
54 12
|
1月前
|
存储 分布式计算 Java
存算分离与计算向数据移动:深度解析与Java实现
【11月更文挑战第10天】随着大数据时代的到来,数据量的激增给传统的数据处理架构带来了巨大的挑战。传统的“存算一体”架构,即计算资源与存储资源紧密耦合,在处理海量数据时逐渐显露出其局限性。为了应对这些挑战,存算分离(Disaggregated Storage and Compute Architecture)和计算向数据移动(Compute Moves to Data)两种架构应运而生,成为大数据处理领域的热门技术。
61 2
|
1月前
|
分布式计算 Java MaxCompute
ODPS MR节点跑graph连通分量计算代码报错java heap space如何解决
任务启动命令:jar -resources odps-graph-connect-family-2.0-SNAPSHOT.jar -classpath ./odps-graph-connect-family-2.0-SNAPSHOT.jar ConnectFamily 若是设置参数该如何设置
|
2月前
|
算法 Java 测试技术
🌟Java 零基础 | 详解 单目运算符
【10月更文挑战第14天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
51 7
|
2月前
|
Java 测试技术 开发者
🌟Java 零基础 | 深入理解三目运算符
【10月更文挑战第13天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
54 3
|
2月前
|
Java 测试技术 开发者
🌟Java零基础-Lambda运算符详解 🌟
【10月更文挑战第12天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
27 1
|
2月前
|
机器学习/深度学习 算法 搜索推荐
让星星⭐月亮告诉你,Java冒泡排序及其时间复杂度计算
冒泡排序是一种简单的排序算法,通过多次遍历数组,每次比较相邻元素并交换位置,将较小的元素逐步移至数组前端。第一轮结束后,最小值会位于首位;第二轮则将次小值置于第二位,依此类推。经过 (n-1) 轮遍历后,数组完成排序。冒泡排序的时间复杂度为 O(n²),在最优情况下(已排序数组)时间复杂度为 O(n)。示例代码展示了如何实现冒泡排序。
59 1
|
2月前
|
Java
JAVA易错点详解(数据类型转换、字符串与运算符)
JAVA易错点详解(数据类型转换、字符串与运算符)
57 4
|
2月前
|
安全 Java 测试技术
🌟 Java 零基础 | 详解 instanceof 运算符
【10月更文挑战第1天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
50 1