操作符介绍

java语言操作符

1、赋值操作符  =

2、计算操作符   + 、- (减、负号)、*(乘)、/(除)

3、递增递减     --(递减)、++(递增)

4、关系操作符    ==、!=、equals()

5、逻辑操作符   ! 、&& 、|| 、& 、|

赋值操作符

赋值操作符,顾名思义就是把一个值覆盖一个变量,在java程序中,通常是等号 (=) 右边的是内容,左边的承接内容的变量

public class CaozuofuFuzhi
{
public static void main(String[] args)
{
//值变量赋值
int AA = 8;
//引用类型赋值
String str = "I am String";
//类的赋值
Myclass mc = new myClass();
}
}

int类型和String 类型的赋值都好理解;

第三个涉及到类。我们把MyClass 看做是一个数据类型,mc 看做是这个数据类型的变量。后面 new myClass() 是初始化类,可以把他看做是Objdect 对象。这样就是 把  new myClass()  对象赋值给了 类型为MyClass 变量 mc。

计算操作符

计算操作符很简单,这个直接看代码很直观

public class Caozuofu
{
public static void main(String[] args)
{
int A = 48;
int B = 30; int jiegou;
// 符号 +
jiegou = A+B;
System.out.println("A + B:"+jiegou);
// 符号 -
jiegou = A-B;
System.out.println("A - B:"+jiegou);
// 符号 *
jiegou = A*B;
System.out.println("A * B:"+jiegou);
// 符号 /
jiegou = A/B;
System.out.println("A - B:"+jiegou);
// 符号 %
jiegou = A%B;
System.out.println("A - B:"+jiegou); }
}

计算结果

A + B:78
A - B:18
A * B:1440
A - B:1
A - B:18

计算操作符中主要注意的两点:

1、接受结算结构的值是否能够满足这个值得内容范围,尤其是计算乘法的时候。数据类型的大小范围在博客 java学习 之 java基本类型

2、算法操作符的优先级。

public class CaozuofuFuzhi
{
public static void main(String[] args)
{
//计算操作符的优先级
int A = 3;
int B =8;
int C = 10;
int D = 7; int jg ;
int jg1;
jg = A + B * C - D;
jg1 = (A + B) * (C - D);
System.out.println("jg = "+ jg+ " jg1="+jg1); }
} //执行结构
jg = 76 jg1=33

递增递减

递增递减也分为在数字前面前面递增(递减)还是后面递增递减。(对于前递增和前递减(如++A 或--A),会先执行运算,再生成值。而对于后递增和后递减(如A++或A--),会先生成值,再执行运算。),见代码例子

public class Caozuofu4
{
public static void main(String[] args)
{
int intB = 200;
// 前++
int intA= ++intB;
System.out.println("前++");
System.out.println(intA);
System.out.println(intB);
// 后++
int intC = 100;
intA= intC++;
System.out.println("后++");
System.out.println(intA);
System.out.println(intC); }
} /* -------------------------------执行结构---------------------------------------- */
前++
201
201
后++
100
101

这是 ++ 的例子,-- 同理。

关系操作符

关系操作符,就是判断两个值是不是相同,生成的是一个 boolean (布尔)结果。比较操作符有 > 、< 、>= 、<= 、!= 、==、equals(),还可以直接就是一个 boolean 的变量。

其他操作符比较直观好理解。这边显示一个例子来说明。

public class CaozuofuGuanxi
{
public static void main(String[] args)
{
int aa = 1;
int bb = 1;
System.out.println(aa==bb);
System.out.println(aa!=bb); }
} //----------------执行结果-------------------------
true
false

下面重点看下,== 、 equals 的用法和区别:

== 主要用来比较基本类型,equals 用来比较引用类型。

这两者比较的是引用的内容的地址,但是为什么在String 类型中又可以比较内容的值了呢,那是因为 String 类对这个 equals 进行重写,使得他们不再比较变量只想的地址,而是来比较地址中的内容是不是形同了。

逻辑操作符

      &&、& 并且的操作符。只是 && 在逻辑关系中是短路的操作符(短路:在并且操作符中,如果第一个比较是 false 的,那么后面的比较久无需在执行。而在或者操作符中,如果第一个比较是 true的,后面的也无需在执行。)

       ||  、|、或者的操作符。  || 是短路的。

       !   非操作符,取相反的意思

java学习 之 操作符的更多相关文章

  1. 0032 Java学习笔记-类加载机制-初步

    JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...

  2. [ Java学习基础 ] Java的继承与多态

    看到自己写的东西(4.22的随笔[ Java学习基础 ] Java构造函数)第一次达到阅读100+的成就还是挺欣慰的,感谢大家的支持!希望以后能继续和大家共同学习,共同努力,一起进步!共勉! ---- ...

  3. Java 学习(5):修饰符 运算符

    目录 --- 修饰符 --- 运算符 --- 循环结构 --- 分支结构 修饰符: 修饰符用来定义类.方法或者变量,通常放在语句的最前端.如下: public class className { // ...

  4. Java 学习(21):Java 实例

    Java 实例 本章节我们将为大家介绍 Java 常用的实例,通过实例学习我们可以更快的掌握 Java 的应用. Java 环境设置实例 //HelloWorld.java 文件 public cla ...

  5. Java学习笔记之---基础语法

    Java学习笔记之---基础语法 一. Java中的命名规范 (一)包名 由多个单词组成时,所有字母小写(例如:onetwo) (二)类名和接口 由多个单词组成时,所有单词首字母大写(例如:OneTw ...

  6. Java学习:JDK8的新特性

    Java学习:JDK8的新特性 一.十大特性 Lambda表达式 Stream函数式操作流元素集合 接口新增:默认方法与静态方法 方法引用,与Lambda表达式联合使用 引入重复注解 类型注解 最新的 ...

  7. 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁

    什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...

  8. 0035 Java学习笔记-注解

    什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...

  9. 分享篇——我的Java学习路线

    虽然之前我是开发出身,但是我学习的语言是Objective-c,这个语言使用起来范围比较窄,对于自动化学习来说也是无用武之地,所以我自己学习了Java,对于一个有开发经验的人来说学习一门新语言相对来说 ...

随机推荐

  1. Airflow Python工作流引擎的重要概念介绍

    Airflow Python工作流引擎的重要概念介绍 - watermelonbig的专栏 - CSDN博客https://blog.csdn.net/watermelonbig/article/de ...

  2. java内存模型详解

    对于本篇文章,将从四个概念来介绍:内存模型基础,重排序,顺序一致性和happens-before 1.内存模型基础 在并发编程中,有两个关键问题:线程之间如何通信和如何同步.由此而引出了两种并发模型: ...

  3. SSH 协议的 ssh StrictHostKeyChecking

    项目的SFTP用到了这个参数: @Override public PooledObject<ChannelSftp> makeObject() throws Exception { JSc ...

  4. 【数学建模】MatLab 数据读写方法汇总

    1.读入 txt 文件数据. load xxx.txt A=load(‘xxx.txt’) A=dlmread(‘xxx.txt’) A=importdata(‘xxx.txt’) 例:将身高体重的 ...

  5. 后缀自动机(SAM)学习笔记

    目录 定义 SAM 的状态集 一些性质 SAM 的后缀链接 SAM 的转移函数 一些性质 算法构造 构造方法 时间复杂度证明 状态的数量 转移的数量 代码实现 实际应用 统计本质不同的子串个数 计算任 ...

  6. pc安装完成charles成功,小米安装crt证书失败

    问题描述: 今天在学习爬虫爬取APP内容时,需要安装crt证书.根据静谧大大的书,前面都挺顺利的.但在我的小米手机上安装crt证书时,出现了错误.手机显示无法安装. 解决之道: 1.不要用小米手机自带 ...

  7. Linux基本命令总结(八)

    接上篇: 38,一次性定时计划任务的at命令的用法! 1.命令格式: at[参数][时间] 2.命令功能: 在一个指定的时间执行一个指定任务,只能执行一次,且需要开启atd进程(ps -ef | gr ...

  8. 如何查看C++ dll位数

    使用VS自带工具 dumpbin dumpbin /headers xxx.dll

  9. 分布式监控系统开发【day38】:报警策略队列处理(五)

    一.目录结构 二.报警策略队列处理 1.入口MonitorServer import os import sys if __name__ == "__main__": os.env ...

  10. MapReduce-FileInputFormat

    在运行 MapReduce 程序时,输入的文件格式包括:基于行的日志文件.二进制格式文件.数据库表等.那么,针对不同的数据类型,MapReduce 是如何读取这些数据? FileInputFormat ...