博客
关于我
Java通过哪些机制处理数据(3)-运算符
阅读量:351 次
发布时间:2019-03-04

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

思维导图

算术运算符

在Java中,算术运算符用于对数据进行基本的加、减、乘、除等操作。以下是常见的算术运算符及其特点:

(1)++和++的含义

  • ++出现在变量后:先赋值后自增。例如:
    Int m = 10;Int n = m++;// m的值会变成11,n的值仍然是10。
  • ++出现在变量前:先自增后赋值。例如:
    Int x = 100;Int y = ++x;// x的值会变成101,y的值也会是101。

(2)System.out.println(a++)的理解

  • System.out.println(a++) 会先将a的值打印出来,然后自增1。可以理解为:
    Temp Int temp = a++;System.out.println(temp);

关系运算符

关系运算符用于比较两个值的大小关系,其结果总是布尔类型(true或false)。常见关系运算符包括===!=等。

  • =:赋值运算符,与关系运算符无关。
  • ==:用于判断两个值是否相等。
  • !=:用于判断两个值是否不相等。
  • 关系运算符需要严格按照语法规则使用,两个符号之间不能有空格。

逻辑运算符

逻辑运算符用于对布尔值(true或false)进行逻辑运算,结果也是布尔值。

常见逻辑运算符

  • &:逻辑与(只有两边都为true时结果才为true)。
  • ||:逻辑或(只要有一边为true,结果就为true)。
  • !:逻辑非(将true变为false,false变为true)。

&&&的区别

  • &:短路与,不保证右边表达式一定执行。
  • &&:短路与,保证右边表达式一定执行。
  • 两者的运算结果完全相同,但&&在效率上比&更高。

赋值运算符

赋值运算符用于将值赋予变量。在Java中,赋值运算符包括基本赋值运算符和扩展赋值运算符。

基本赋值运算符

  • =

扩展赋值运算符

  • +=-=*=/=%=等。
  • 这些运算符会先执行右边的表达式,然后将结果赋值给左边的变量。

示例

Int x = 100;x += 1; // 等同于 x = (Int)(x + 1);

条件运算符

条件运算符用于根据布尔表达式的结果,选择执行相应的代码分支。

语法格式

  • 布尔表达式 ? 表达式1 : 表达式2

执行原理

  • 如果布尔表达式为true,执行表达式1的结果作为整体结果。
  • 如果布尔表达式为false,执行表达式2的结果作为整体结果。

示例

Boolean sex = false;Char c = sex ? '女' : '男'; // 正确的写法,c的类型应为Char

字符串连接运算符

在Java中,+运算符有两个作用:

  • 数值类型的求和。
  • 字符串的拼接。
  • 字符串拼接的规则

    • 当两个操作数中有任意一个是字符串时,+运算符会进行字符串拼接。
    • 拼接操作是按顺序自左向右执行。

    示例

    System.out.println(100 + 200 + "110"); // 300110

    字符串的定义与拼接

    String name = "jack";System.out.println("登录成功欢迎" + name + "回来");

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

    你可能感兴趣的文章
    Neo4j(2):环境搭建
    查看>>
    nessus快速安装使用指南(非常详细)零基础入门到精通,收藏这一篇就够了
    查看>>
    Nessus漏洞扫描教程之配置Nessus
    查看>>
    Nest.js 6.0.0 正式版发布,基于 TypeScript 的 Node.js 框架
    查看>>
    Netpas:不一样的SD-WAN+ 保障网络通讯品质
    查看>>
    netsh advfirewall
    查看>>
    Netty WebSocket客户端
    查看>>
    Netty 异步任务调度与异步线程池
    查看>>
    Netty中集成Protobuf实现Java对象数据传递
    查看>>
    Netty工作笔记0006---NIO的Buffer说明
    查看>>
    Netty工作笔记0011---Channel应用案例2
    查看>>
    Netty工作笔记0013---Channel应用案例4Copy图片
    查看>>
    Netty工作笔记0014---Buffer类型化和只读
    查看>>
    Netty工作笔记0020---Selectionkey在NIO体系
    查看>>
    Vue踩坑笔记 - 关于vue静态资源引入的问题
    查看>>
    Netty工作笔记0025---SocketChannel API
    查看>>
    Netty工作笔记0027---NIO 网络编程应用--群聊系统2--服务器编写2
    查看>>
    Netty工作笔记0050---Netty核心模块1
    查看>>
    Netty工作笔记0060---Tcp长连接和短连接_Http长连接和短连接_UDP长连接和短连接
    查看>>
    Netty工作笔记0077---handler链调用机制实例4
    查看>>