返回顶部
首页 > 资讯 > 后端开发 > Python >Java六类运算符详解
  • 260
分享到

Java六类运算符详解

Python 官方文档:入门教程 => 点击学习

摘要

目录算数运算符关系运算符逻辑运算符赋值运算符字符串连接运算符条件运算符在 Java 语言中,运算符有算数运算符、关系运算符、逻辑运算符、赋值运算符、字符串连接运算符、条件运算符。 算

在 Java 语言中,运算符有算数运算符、关系运算符、逻辑运算符、赋值运算符、字符串连接运算符、条件运算符。

算数运算符

算数运算符是我们最常用的运算符,用于完成基本的算术运算。共包含以下几种,其中加减乘除不必多说,这里重点介绍后面几种。

算数运算符表示
+
-
*
/
取余%
自增++
自减--

 % 在 Java 中意为取模/取余,一个数取余另一个数,就意味着两数先做除法运算,然后将余数作为结果。如果余数为 0,那么这就是整除。

public static void main(String[] args) {
    System.out.println(3%2); //3取余2,商1余1
    System.out.println(8%2); //8取余2,商4余0,整除
    System.out.println(2%8); //2取余8,商0余2
}

Java 中小数也是可以取余的,但我们在实际应用当中仅需掌握整数间的取余即可。

++ 和 -- 分别为自增、自减 1,可以使用在变量之前,也可以使用在变量之后。这里需要注意自增自减运算符在单独使用和被使用时的计算方法是不同的。

单独使用就是整个语句只有变量和自增自减运算符。
被使用是指该语句除了自增自减还包含着其他的任何操作。

① 单独使用时。自增自减在变量的前或后效果都相同;

public static void main(String[] args) {
    int a=5,b=5;
    //单独使用
    a++; //相当于a=a+1
    ++b; //相当于b=b+1
    System.out.println(a); //6
    System.out.println(b); //6
}

② 被使用时。运算符在前,先将该变量自增/自减后再使用(使用的是经过运算后的变量);运算符在后,先使用完该变量,然后再将该变量进行自增/自减操作(使用的是未经运算的变量,即初始状态的变量)。如下以自增作为案例,自减原理相同:

  • ++a的值为a+1 运算符在前,先将变量 a 自增,然后使用自增后的结果 a+1 进行操作。
  • a++的值为a 运算符在后,先使用变量 a 进行操作,使用完之后再对 a 进行自增。
public static void main(String[] args) {
    int a=5,b=5;
    //被使用
    int c=a++; //运算符在后,先使用a的值赋给c,然后a再自增
    int d=++b; //运算符在前,先将b自增,然后将结果b+1赋值给d
    System.out.println(a); //6(到这步时a、b均已经完成了自增操作)
    System.out.println(b); //6
    System.out.println(c); //5
    System.out.println(d); //6
}

关系运算符

关系运算符主要是用来比较两者大小关系的。包含以下几种:

关系运算符表示
大于>
小于<
大于 或 等于>=
小于 或 等于<=
等于==
不等于!=

 关系运算符的运算结果必定只有布尔值,即成立 true 或 不成立 false。

public static void main(String[] args) {
    int a=5,b=10,c=5;
    System.out.println(c<b); //true
    System.out.println(b<c); //false
    System.out.println(a>=c); //true
    System.out.println(a!=c); //false
}

在 Java 语法的运算中,当不同运算符结合使用时,优先顺序也是不同的。算数运算符和关系运算符结合,采取“先算数再关系”的优先级。

public static void main(String[] args) {
    int a=5,b=10,c=5;
    System.out.println(a+c>20); //false,先计算a+c值为10,然后比较与20的关系
    System.out.println(a%2==0); //false,先计算a%2值为1,然后比较与0的关系
    System.out.println(a++>5); //false,先使用a对5进行比较,然后a自增1
    System.out.println(++a>5); //true,先将a自增1,然后比较与5的关系
}

逻辑运算符

逻辑运算符用于把语句连接成更复杂的复杂语句,共包含三种:

逻辑运算符表示
逻辑与&&
逻辑或
逻辑非!

逻辑运算是建立在关系运算基础之上的,所以它的运算结果也只有布尔值 true 或 false。

逻辑与 && 用于表达多个条件之间的并且关系,各个条件缺一不可,必须同时满足,所有条件均为真(true)整体才为真,只要有其中一个条件为假(false)则整体为假。

逻辑或 ‖ 用于表达多个条件之间的或者关系,无需同时满足,只要有其中一个条件为真则整体为真,只有当所有条件均为假时整体才为假。

逻辑非 ! 意为取反,非真则假,非假则真。

public static void main(String[] args) {
    int a=5,b=10,c=5;

    System.out.println(b>=a && b<c); //b>=a为true,b<c为false,true&&false=false
    System.out.println(b>=a && b>c); //b>=a为true,b>c为true,true&&true=true

    System.out.println(b>=a || b<c); //b>=a为true,b<c为false,true||false=true
    System.out.println(b<a || b<c); //b<a为false,b<c为false,false||false=false

    System.out.println(!(a>b)); //a>b为false,非false得true
    System.out.println(!(a<=c)); //a<=c为true,非true得false
}

此外,逻辑与也称“短路与”,逻辑或也称“短路或”。短路是指在一条线路中的某个位置发生短路,则整个线路都会停止运行。将这个机制映射到逻辑与和逻辑或中也很明确:逻辑与,众多条件中从第一个条件开始只要看到有一个条件为 false,那么也就不用再往后看了,可确定它的整体已是 false,且 该条件之后的语句不会再被执行。逻辑或,众多条件中从第一个条件开始只要看到有一个条件为 true,则整体为 true,且 该条件之后的语句不会再被执行。这就是“短路与”、“短路或”名称的由来。

如下面的语句,三个条件进行逻辑与运算,当我们看到第一个条件 a>b 为 false 时,可以直接确定整个语句为 false,那么该条件之后的 c>3 和 b++>a 都不会再被执行运算,因此 b 在该语句也是不会自增的。逻辑或同理。

public static void main(String[] args) {
    int a=5,b=10,c=5;
    System.out.println(a>b && c>3 && b++>a); //false
}

赋值运算符

赋值运算符是 =,优先级低于其他运算符,所以赋值往往是最后执行的。分简单赋值运算符和扩展赋值运算符。简单赋值就是常见的 =,扩展赋值则是在简单赋值的基础上加入一些其他的运算,如 +=、-=、*=、/=、%=。

public static void main(String[] args) {
    int a=5;
    a += 10; //同等于a=a+10
    System.out.println(a); //15
    a *= 3; //同等于a=a*3
    System.out.println(a); //45
}

字符串连接运算符

字符串连接使用 +,该符号很特别,如果两边是数字则进行加法运算,如果两边是字符串则进行连接。

char 字符型,放在单引号中,只能有一个。
String 字符串型,放在双引号中,数量不限。

public static void main(String[] args) {
    System.out.println("我是CSDN博主:"+"敬 之"); //我是CSDN博主:敬 之
    System.out.println("主页:"+"https://majinjian.blog.csdn.net"); //主页Https://majinjian.blog.csdn.net

    int age = 24;
    System.out.println("我的年龄是"+age); //我的年龄是24
}

注意字符串类型具有同化性质,无论什么类型的值跟字符串连接都会成为字符串类型。如下面的语句,1+2 先进行加法运算得 3,此时 3 与字符串 “3” 连接,就变成了 “3”,后面的 4 也与字符串 “3” 连接,变成了 “4”,最后输出字符串 “334”。

public static void main(String[] args) {
    System.out.println(1+2+"3"+4); //334
}

条件运算符

条件运算符也称三目运算符,同时对三个条件进行操作。语法格式如下:

boolean?数1:数2

整个条件运算的值为数 1 或者数 2,所以最终得到的结果是这里面二选一。整个执行过程是先判断 boolean 的值,值为 true 得数 1,值为 false 得数 2。

public static void main(String[] args) {
    int number = 5;
    int number1 = number>0?33:66; //值为true得数1
    int number2 = number>6?33:66; //值为false得数2
    System.out.println(number1); //33
    System.out.println(number2); //66
}

到此这篇关于Java 六类运算符详解的文章就介绍到这了,更多相关Java 六类运算符内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Java六类运算符详解

本文链接: https://lsjlt.com/news/200744.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Java六类运算符详解
    目录算数运算符关系运算符逻辑运算符赋值运算符字符串连接运算符条件运算符在 Java 语言中,运算符有算数运算符、关系运算符、逻辑运算符、赋值运算符、字符串连接运算符、条件运算符。 算...
    99+
    2023-03-21
    算数运算符 关系运算符 逻辑运算符 赋值运算符 字符串连接运算符 条件运算符
  • 详解JAVA之运算符
    目录一、算术运算符二、赋值运算符三、自增自减运算符四、关系运算符五、逻辑运算符六、三元运算符七、数据输入总结一、算术运算符 运算符:常见的±*/等 表达式:运算符连接起来符合java...
    99+
    2024-04-02
  • 详解Java中的运算符
    本篇文章为大家展示了详解Java中的运算符,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Java的运算符,分为四类:算数运算符、关系运算符、逻辑运算符、位运算符。算数运算符(9):+ - * / %...
    99+
    2023-05-31
    java 运算符 ava
  • Java 运算符详情
    目录1、算术运算符2、关系运算符3、逻辑运算符4、位运算符5、赋值运算符6、条件运算符7、instanceof 运算符Java 中的运算符与 C 语言基本一致。 1、算术运算符 ...
    99+
    2024-04-02
  • C++类型转换运算符详解
    目录老式显式类型转换c++的显示类型转换为什么要有新的类型转换具体应该使用哪种转换static_cast运算符dynamic_cast运算符const_cast运算符reinterp...
    99+
    2024-04-02
  • Java运算符优先级详解
    本篇内容介绍了“Java运算符优先级详解”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Java运算符优先级详解 优先级是指同一式子中多个运算...
    99+
    2023-06-03
  • Java双冒号(::)运算符使用详解
    目录1.说明2.先来说下@FunctionalInterface3. 下面来讲讲这个 "::"是干嘛的4. 建立一个Person类4:构建多个person对象,放入数组中,然后对数组...
    99+
    2024-04-02
  • C++类与对象之运算符重载详解
    目录运算符重载加号运算符重载左移运算符重载递增运算符重载递减运算符重载赋值运算符重载关系运算符重载函数调用运算符重载总结运算符重载 运算符重载概念:对已有的运算符重新进行定义,赋予其...
    99+
    2024-04-02
  • 详解TS对象扩展运算符和rest运算符
    目录概述对象 rest 属性对象扩展属性制作对象的浅拷贝keyof 和查找类型keyof 操作符号索引类型查询概述 TypeScript 2.1 增加了对 对象扩展运算和 rest ...
    99+
    2024-04-02
  • 深入了解JAVA数据类型与运算符
    目录前言变量与类型变量的分类按声明的位置来分类:按数据类型划分:变量的命名规则硬性指标:软性指标:Java类型汇总:运算符总结前言 Java的数据类型与运算符很多与C语言大致相同,但...
    99+
    2024-04-02
  • Python3中的算术运算符详解
    目录一·算术运算符二·代码演示1·求和 +2·取差 -3·相乘 *4·相除 /5·取...
    99+
    2024-04-02
  • php运算符运用之类型运算符怎么用
    这篇文章将为大家详细讲解有关php运算符运用之类型运算符怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。类型运算符指的是instanceof。instanceof运算符是php5引进的。在此之前用is...
    99+
    2023-06-20
  • java数据类型和运算符的深入讲解
    一.整型变量 1.基本格式 int 变量名 = 初始值; 代码示例: public class CSDN { public static void main(String[]...
    99+
    2024-04-02
  • JavaScript展开运算符和剩余运算符的区别详解
    目录什么是剩余运算符?剩余运算符在JavaScript函数中是如何工作的?注意!不能在包含剩余参数的函数体中使用"use strict"剩余运算符在参数解构中是如...
    99+
    2024-04-02
  • Java-异或运算详解
    基本概念 异或运算,符号为XOR或者^,是二进制的运算,运算法则为相同为0,不同为1,我记得时候反正总会忘(和同或记反),所以这里直接把异或理解为"不进位的二进制相加".举个栗子: 1000111 和 1110001 异或 按照不进位...
    99+
    2023-10-08
    数据结构 java Powered by 金山文档
  • 详解Java的位运算
    目录位运算代码演示代码结果位运算的应用位运算 很久以前学习过位运算,但是很久不用,感觉都忘得差不多了。最近看了几处位运算的代码,发现都看不懂了,哈。也是时候回来补一补基础知识了。 程...
    99+
    2023-05-15
    Java位运算 Java运算
  • 【Java基础教程】(三十六)常用类库篇 · 第六讲:数学运算类——全面讲解Java数学计算支持类库,BigDecimal、Math、Random、DecimalFormat...~
    Java基础教程之常用类库 · 数学运算类 1️⃣ 概念🔍 数学运算类汇总 2️⃣ 优势和缺点3️⃣ 使用3.1 各数学计算支持类使用案例3.2 Math类3.3 BigDecimal类3.4 Random...
    99+
    2023-08-16
    java python 数据库 经验分享 开发语言 后端 算法
  • 第04章 MySQL运算符详解
    第04章 MySQL运算符详解 1. 算术运算符 算术运算符主要用于数学运算,其可以连接运算符前后的两个数值或表达式,对数值或表达式进行加(+)、减(-)、乘(*)、除(/)和取模(%)运算。 1.加法与减法运算符 mysql> SE...
    99+
    2016-03-13
    第04章 MySQL运算符详解
  • Python的运算符重载详解
    目录一、前言二、重载作用三、自定义列表一、前言 运算符重载:为运算符定义方法 所谓重载,就是赋予新的含义同一个运算符可以有不同的功能 二、重载作用 让自定义的实例像内建对象一样进行运...
    99+
    2024-04-02
  • Python全栈之运算符详解
    目录1. 算数_比较_赋值_成员1.1 算数运算符1.2 比较运算符1.3 赋值运算符1.4 成员运算符2. 身份运算符小提示:3. 逻辑运算符3.1 位运算符3.2 小总结4. 代...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作