首页 > 编程语言 >java学习_04

java学习_04

时间:2023-10-21 23:00:32浏览次数:26  
标签:运算符 false 04 System 学习 println java true out

自增自减运算符

  • ++和-- 无论是放在变量的前边还是后边,单独写一行结果是一样的

public class day4_02 {
    public static void main(String[] args) {
        int x = 10;

        //后++:先用后加
        //先把x变量中的值拿出来用,赋值给y,然后再进行自增。
        //赋值给y的值是自增前的。
        int y = x++; // x=11  y=10

        //先++:先加后用
        //先把x进行自增,然后把自增后的结果赋值给左边的变量
        //先把x自增,变成12,然后再把自增之后的12赋值给z
        int z = ++x;
        System.out.println("x:"+ x); //12
        System.out.println("y:" +y); //10
        System.out.println("z:" + z); //12
    }
}


赋值运算符

public class day4_03 {
    public static void main(String[] args) {
        //+=
        //规则:将左边和右边进行相加,然后再把结果赋值给左边
        int a =10;
        int b=20;
        
        //把a+b,再把结果赋值给左边的变量a
        a += b;
        //等同于 a = (int)(a + b);
        System.out.println(a); //30
        System.out.println(b); //20
        
        
        //细节:
        //+=,-=,*=,/=,%= 底层都隐藏了一个强制类型转换I
        short s = 1;
        //把左边和右边进行相加,得到结果2,再赋值给左边的变量
        s+= 1;
        //等同于:s=(short)(s+1);
        System.out.println(s); //2
    }
}


关系运算符

  • 注意事项:关系运算符的结果都是boolean类型,要么是true,要么是false。千万不要把“==”误写成“=”。


逻辑运算符

  • 在数学中,一个数据x,大于5,小于15,我们可以这样来进行表示:5< x <15。

  • 在java中,需要把上面的式子先进行拆解,再进行合并表达。

  • 拆解为:x > 5 和 x < 15
    合并后:x > 5 & x < 15

public class day4_04 {
    public static void main(String[] args) {
        //1.& 并且
        //两边都为真,结果才是真
        System.out.println(true & true);//true
        System.out.println(false & false);//false
        System.out.println(true & false);//false
        System.out.println(false & true);//false

        //2.|或者
        //两边都为假,结果才是假
        System.out.println(true | true);//true
        System.out.println(false |false);//false
        System.out.println(true |false);//true
        System.out.println(false | true);//true

        //^异或
        //相同为false,不同为true
        //了解一下即可
        System.out.println(true ^ true);//false
        System.out.println(false ^ false);//false
        System.out.println(true ^ false);//true
        System.out.println(false ^ true);//true

        //! 逻辑非 取反
        //提示:
        //取反的感叹号不要写多次,要么不写,要么只写一次
        System.out.println(!false);//true
        System.out.println(!true);//false
    }
}


短路逻辑运算符

  • & |,无论左边true false,右边都要执行。

  • && ||,如果左边能确定整个表达式的结果,右边不执行。

  • &&:左边为false,右边不管是真是假,整个表达式的结果一定是false。

  • ||:左边为true,右边不管是真是假,整个表达式的结果一定是true。

  • 这两种情况下,右边不执行,提高了效率。
    最常用的逻辑运算符:&&||!

public class day4_05 {
    public static void main(String[] args) {
        //1. &&
        //运行结果跟单个&是一样的
        //表示两边都为真,结果才是真
        System.out.println(true && true);//true
        System.out.println(false && false);//false
        System.out.println(false && true);//false
        System.out.println(true && false);//false

        //2. ||
        //运行结果跟单个|是一样的
        //表示两边都为假,结果才是假
        System.out.println(true || true);//true
        System.out.println(false || false);//false
        System.out.println(false || true);//true
        System.out.println(true || false);//true

        //3.短路逻辑运算符具有短路效果
        //简单理解:当左边的表达式能确定最终的结果,那么右边就不会参与运行了
        int a = 10;
        int b = 10;
        boolean result = ++a < 5 && ++b < 5;
        System.out.println(result);//false
        System.out.println(a);//11
        System.out.println(b);//10
    }
}


三元运算符

  • 格式: 关系表达式 ? 表达式1 : 表达式2

计算规则:
首先计算关系表达式的值
如果值为true,表达式1的值就是运算结果
如果值为false,表达式2的值就是运算结果


运算符优先级

标签:运算符,false,04,System,学习,println,java,true,out
From: https://www.cnblogs.com/elaina520/p/17779718.html

相关文章

  • Unity2023零基础入门学习
    Unity游戏引擎是什么?游戏引擎是一种软件框架,用于开发和创建电子游戏。它提供了一系列工具和功能,帮助开发者设计、构建和管理游戏的各个方面,包括图形渲染、物理模拟、音频处理、动画、碰撞检测、人工智能等。游戏引擎可以简化游戏开发过程,提高效率,并提供跨平台的支持,使开发者能......
  • JVM 学习
    目录1.类加载器及类加载过程1.1基本流程1.2类加载器子系统作用1.3类加载器角色1.4加载过程(1)加载loading(2)链接linking验证verify准备prepare解析resolve(3)初始化initstatic与final的搭配问题1.5类加载器简要介绍各加载器之间的关系启动类加载器(引导类加载......
  • 操作系统学习
    目录1、概念什么是操作系统特征并发共享虚拟异步总结运行机制内核程序和应用程序特权指令和非特权指令内核态、用户态的切换中断内中断外中断分类中断机制基本原理系统调用总结操作系统的内核2.进程与线程进程的组成PCB程序段、数据段进程状态的转换进程控制进程创建终止进程进......
  • 《信息安全系统设计与实现》学习笔记6
    第三章Unix/Linux进程管理多任务处理一般来说,多任务处理指的是同时进行几项独立活动的能力。多任务处理是所有操作系统的基础。总体上说,它也是并行编程的基础。进程的概念进程的正式定义:进程是对映像的执行。操作系统内核将一系列执行视为使用系统资源的单一实体。在操......
  • Javaweb(十二)
    1、Ajax:异步的JavaScript和XML1.1、Ajax的作用:①、与服务器进行数据交换:通过AJAX可以给服务器发送请求,并获取服务器响应的数据使用了AJAX和服务器进行通信,就可以使用HTML+AJAX来替换JSP页面了②、异步交互:可以在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页......
  • 在JavaScript中,如何检查空字符串、未定义或空值?
    内容来自DOChttps://q.houxu6.top/?s=在JavaScript中,如何检查空字符串、未定义或空值?JavaScript中是否有string.Empty,还是需要单独检查""?空字符串、未定义、空值等要检查一个真值:if(strValue){//strValue是一个非空字符串,true,42,Infinity,[],等等}要检查一个假......
  • 如何测试一个空的JavaScript对象?
    内容来自DOChttps://q.houxu6.top/?s=如何测试一个空的JavaScript对象?在AJAX请求之后,有时我的应用程序可能会返回一个空对象,例如:vara={};我如何检查是否确实如此?你可以使用带有Object.hasOwn(ECMA2022+)测试的for…in循环来检查一个对象是否有任何自己的属性:functio......
  • 深度学习环境搭建(Windows11)
    深度学习环境的搭建(Windows11)偶然重装了系统,在此记录下环境的恢复基本深度学习环境的搭建,包括Anaconda+CUDA+cuDNN+Pytorch+TensorRT的安装与配置。ps:显卡为RTX4060LaptopGPU1.安装Python前往Python官网https://www.python.org/getit/,下载最新版Python并安装即可。2.......
  • 学习笔记6
    第三章Unix/Linux进程管理3.1——3.2多任务处理、进程多任务处理:多任务处理指的是机器同时进行几项独立活动的能力。在计算机技术中,多任务处理是通过在不同任务之间切换实现的。虽然在一个时间点,CPU只能执行一个任务,但是通过快速的切换,就会给人一种同时执行所有任务的错觉。这......
  • Java拾贝第八天——线程的状态和常用方法
    Java拾贝不建议作为0基础学习,都是本人想到什么写什么任何线程一般具有5种状态。(非生命周期)创建状态:新建了一个线程对象,但还处于不可运行状态。就绪状态:新建线程后,调用该线程start()方法就可以启动线程。此时线程进入线程队列排队,并等待CPU分配资源。当线程启动时,进入该状......