Java中常用的运算符

  运算符是一种“功能”符号,用以通知 Java 进行相关的运算。譬如,我们需要将变量 score 的值设置为 20 ,这时候就需要一个“=”,告诉程序需要进行赋值操作。

Java 语言中常用的运算符可分为如下几种:

  • 算术运算符
  • 赋值运算符
  • 比较运算符
  • 逻辑运算符
  • 条件运算符

一:Java中的算术运算符;

其中,++ 和 -- 既可以出现在操作数的左边,也可以出现在右边,但结果是不同的

例如;

代码如下:

public class HelloWorld {

  public static void main(String []args) {

    int a=2;

    int b=++a;//++a 先让a自增,然后将值赋给变量;
    System.out.println("a:"+a);
    System.out.println("b:"+b);
    int c=2;     int d=c++;//c++ 先将c的值赋给d,然后再执行自增;
    System.out.println("c:"+c);
    System.out.println("d:"+d);   }
}

运行结果为;

解析:b=++a;先处理++a,a自增1并赋值给a,a=6;再处理赋值,b=a

     而d=c++;先处理赋值,先将c赋给d,d=c,然后执行自增1

二:Java中的赋值运算符;

  赋值运算符是指为变量或常量指定数值的符号。如可以使用 “=” 将右边的表达式结果赋给左边的操作数。

Java 支持的常用赋值运算符,如下表所示:

三:Java中的比较运算符;

  比较运算符用于判断两个数据的大小,例如:大于、等于、不等于。比较的结果是一个布尔值( true 或 false )。

Java 中常用的比较运算符如下表所示:

注:

1、  > 、 < 、 >= 、 <= 只支持左右两边操作数是数值类型

2、  == 、 != 两边的操作数既可以是数值类型,也可以是引用类型

四:Java中的逻辑运算符;

逻辑运算符主要用于进行逻辑运算。Java 中常用的逻辑运算符如下表所示:

这里需要注意的是,逻辑运算符比较的对象元素可以是值,变量或是条件,当比较的元素为值时,0代表false,其他非零值代表true。

例如:

代码如下:

public class HelloWorld {
  public static void main(String []args) {     boolean a=true;
    boolean b=false;
    boolean c=true;
    System.out.println(a&&b);
    System.out.println(a||b);
    System.out.println(!a);
    System.out.println(a^b);
    System.out.println(a^c); }
}

运行结果为:

注:逻辑运算符的‘||’在做比较时,是先判断左边的元素是否为true,当其为true时,直接返回true,不会继续判断右边了,同理,'&&'如果可以判断左边的元素为false,则直接返回false,不继续向下判断。

五:Java中的条件运算符;

条件运算符( ? : )也称为 “三元运算符”。

语法形式:布尔表达式 ? 表达式1 :表达式2

运算过程:如果布尔表达式的值为 true ,则返回 表达式1 的值,否则返回 表达式2 的值

例如:

代码如下:

public class HelloWorld {
  public static void main(String []args) {     String str = (5>1)? "5大于1" : "5不大于1";
    System.out.println(str); }
}

运行结果为:

注:因为表达式 5>1 的值为 true ,所以返回: 5大于1

六:Java中运算符的优先级;

所谓优先级,就是在表达式中的运算顺序。Java 中常用的运算符的优先级如下表所示:

级别为 1 的优先级最高,级别 11 的优先级最低。譬如,x = 5 + 3 * 2  得到的结果是 11 “先乘后加”嘛!

注:其实没必要去死记运算符的优先级顺序,实际开发中,一般会使用小括号辅助进行优先级管理。因为小括号优先级最高。

例如:

代码如下:

public class HelloWorld {
  public static void main(String []args) {     int a =10;
    int b = a*(a+18);
    System.out.println("b:"+b); }
}

运行结果为:

解析:因为括号优先级最高所以先算a+18 再算  a*28.

Java学习笔记五:Java中常用的运算符的更多相关文章

  1. Java 学习笔记 (五) Java Compile\Build\Make的区别

    以下内容引自: http://blog.51cto.com/lavasoft/436216 Compile.Make和Build的区别 原创leizhimin2010-11-30 11:30:20评论 ...

  2. Java学习笔记十:Java的数组以及操作数组

    Java的数组以及操作数组 一:什么是数组: 数组可以理解为是一个巨大的“盒子”,里面可以按顺序存放多个类型相同的数据,比如可以定义 int 型的数组 scores 存储 4 名学生的成绩 数组中的元 ...

  3. Java 学习笔记(4)——java 常见类

    上次提前说了java中的面向对象,主要是为了使用这些常见类做打算,毕竟Java中一切都是对象,要使用一些系统提供的功能必须得通过类对象调用方法.其实Java相比于C来说强大的另一个原因是Java中提供 ...

  4. java 学习笔记1 java语言概述及开发环境

    高级语言运行机制 高级语言按程序的执行方式分为编译型和解释型两种. java语言比较特殊,Java程序的执行必须经过先编译后解释的步骤. 1 编译生成字节码,只面向JVM(.class) 2Jvm执行 ...

  5. JAVA学习笔记之JAVA 对象引用以及赋值

      关于对象与引用之间的一些基本概念. 初学Java时,在很长一段时间里,总觉得基本概念很模糊.后来才知道,在许多Java书中,把对象和对象的引用混为一谈.可是,如果我分不清对象与对象引用, 那实在没 ...

  6. 8.4(Java学习笔记)java脚本引擎(Rhino)

    一.java脚本引擎 java脚本引擎是沟通java和脚本语句之间的桥梁,可以通过对应的脚本引擎在java中调用各种脚本语言. 二.脚本引擎执行脚本代码 ScriptEngineManager:为Sc ...

  7. Java学习笔记之—Java基础

    将学习到的JAVA基础用xmind记录了下来,需要原件的可以私信

  8. Java学习笔记--通过java.net.URLConnection发送HTTP请求

    http://www.cnblogs.com/nick-huang/p/3859353.html 使用Java API发送 get请求或post请求的步骤: 1. 通过统一资源定位器(java.net ...

  9. Java 学习笔记 (三) Java 日期类型

    以下内容摘自:  https://www.cnblogs.com/crazylqy/p/4172324.html import java.sql.Timestamp; import java.text ...

随机推荐

  1. 检查SQL Server 2005的索引密度和碎片信息(转)

    查询数据库中所有表的索引密度和碎片信息,以便为索引的重建和整理提供依据,也可以参考DBCC SHOWCONTIG,通常FRAGMENTATIOIN在30%以上建议重建,否则建议整理 SELECT i. ...

  2. asyncio标准库1 Hello World

    利用asyncio的event loop,编写和调度协程 coroutine [,kəuru:'ti:n] n. 协程 Simple coroutine(调用1个协程) import asyncio ...

  3. SQL Server ->> 重命名数据库

    ALTER DATABASE [oldDB] SET SINGLE_USER WITH ROLLBACK IMMEDIATE GO ALTER DATABASE [oldDB] MODIFY NAME ...

  4. JSP-Servlet中文乱码

    客户端 get 方法时 出现乱码: 解决办法: String str1 = request.getParameter("stuname"); String str = new St ...

  5. [转]Ubuntu 小企鹅输入法fcitx 支持 五笔拼音

    之前在Ubuntu下使用ibus五笔输入法,用了一段时间发现五笔输入法不能输入词组,并且五笔不支持拼音的功能,从网上找到可以使用fcitx替换掉ibus,因此自已尝试了一把,安装步骤如下: 1. 安装 ...

  6. BZOJ2730:[HNOI2012]矿场搭建(双连通分量)

    Description 煤矿工地可以看成是由隧道连接挖煤点组成的无向图.为安全起见,希望在工地发生事故时所有挖煤点的工人都能有一条出路逃到救援出口处.于是矿主决定在某些挖煤点设立救援出口,使得无论哪一 ...

  7. javascript运算符——条件、逗号、赋值、()和void运算符 (转载)

    原文出自 作者:小火柴的蓝色理想   javascript中运算符总共有46个,除了前面已经介绍过的算术运算符.关系运算符.位运算符.逻辑运算符之外,还有很多运算符.本文将介绍条件运算符.逗号运算符. ...

  8. URL 与URI 的区别

    作者:Octocat链接:https://www.zhihu.com/question/21950864/answer/89835520来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转 ...

  9. 【luogu P3390 矩阵快速幂】 模板

    题目链接:https://www.luogu.org/problemnew/show/P3390 首先要明白矩阵乘法是什么 对于矩阵A m*p  与  B p*n 的矩阵 得到C m*n 的矩阵 矩阵 ...

  10. yarn默认配置

    name value description yarn.ipc.client.factory.class   Factory to create client IPC classes. yarn.ip ...