java.运算符

算术运算符#

+ 加  -减 *乘  /除  %取余 
整数运算时,0不能作为除数,浮点运算时,0.0可以,但是结果无穷大
注意事项:
    1、当两个整数进行除法运算时,结果只取整数部分,小数部分舍弃
    2、当希望结果中保留小数部分,具体方法如下:
        a.将其中一个操作数强转为double类型再做运算
        b.将其中一个操作数乘以1.0提升为double类型再运算(推荐)
    30不能作为除数,否则产生 算术异常:/by zero 。但是0.0可以作为除数但是结果无穷大,编程中尽量避免00.0作为除数
测试demo


字符串连接运算符#

“+”可以实现字符串的连接。同时可以实现字符串与其他数据类型的相连
注意事项:
    1、当+两边的操作数中只要有一个字符类型,则按照字符连接符类处理,结果依然是字符
    2、当+两边的操作数都不是字符串时,则按照算术运算符来处理
测试demo


自增减运算符#

+ 表示加法或连接 ++ 表示自增,也就是让自身的数值加1
- 表示减法 -- 表示自减,也就是让当前变量自身的数值减1
++(--)可分为前++(--)和 后++(--)

    当++在前时先进行加1的操作,然后再进行其他运算
    当++在后时前进行其他运算,然后再进行加1的操作
    -- 同理,也就是无其他*或/等运算符参与时在前在后结果并无区别
测试demo


赋值运算符#

    赋值运算符将右边表达式得运算结果赋值给左边变量得运算符
1、简单赋值
    = 表示赋值运算符,用于将=右边得数据赋值给=左边得变量,覆盖改变了原来得数值
2、复合赋值
    = 、+= 、-= 、*= 、/= 、%=
测试demo



比较运算符#

比较运算符是用来判断两个表达式或值大小得关系运算符
    >   表示是否大于
    <   表示是否小于
    == 表示是否等于
    <= 表示是否小于等于
    !=  表示是否不等于
    >= 表示是否大于等于
关系运算符参与得表达式最终结果为boolean类型, True(真)和False(假)
测试demo


逻辑运算符#

逻辑运算符操作数为boolean表达式
java提供的逻辑运算符有 &&(与) ||(或) !(非)  
    &&(与) 表示逻辑与运算符,相当于“并且”,同真为真,一假为假
    ||(或)    表示逻辑或运算符,相当于“或者”,一真为真,同假为假
    !(非)    表示逻辑非运算符,相当于“取反”,真为假,假为真
&& 和 || 具备短路的特性:如果通过第一个表达式的是即可得出最后的结果则不计算第二个表达式
    短路的特性:
        &&:若第一个条件为假则整个表达式一定为假,此时跳过第二个条件的执行
        ||  : 若第一个条件为真则整个表达式一定为假,此时跳过第二个条件的执行
测试demo



条件/三目运算符#

语法格式
    数据类型 变量名称 = 条件判断 ? 表达式A : 表达式B
    
执行流程
    判断条件是否成立
        若成立为ture,将表达式A的值赋值给左侧的变量
        若不成立为false,将表达式B的值赋值给左侧的变量
注意事项:
    1、必须同时保证表达式A和表达式B都符合左侧数据类型的要求
    2、三元运算符的结果必须被使用
测试demo
 
public class TestThreeEye {    
    public static void main(String[] args) {        
        int a = 10;        
        int b = 20;       
        //数据类型 变量名称 = 条件判断 ? 表达式A : 表达式B        
        int max = a > b ? a : b;        
        System.out.println("最大值是:"+max);        
        //注意:必须同时保证表达式A和表达式B都符合左侧数据类型的要求       
        //int result = 3 > 4 ? 2.5 : 4;//Error:(13, 28) java: 不兼容的类型: 从double转换到int可能会有损失       
        //注意:三元运算符的结果必须被使用        
        //System.out.println(a > b ? a : b);//直接输出是正确写法        
        //a > b ? a : b;//不是语句,错误写法    
        }
}
  
posted @   yonugleesin  阅读(260)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
点击右上角即可分享
微信分享提示
主题色彩