java学习笔记05-运算符
算数运算符
+:相加
-:相减
*:相乘
/:相除
%:取余
++:自增
--:自减
public static void main(String[] args) {
int i = 10;
int j = 3;
System.out.println("i+j等于:"+(i+j));
System.out.println("i-j等于:"+(i-j));
System.out.println("i*j等于:"+(i*j));
System.out.println("i/j等于:"+(i/j));
System.out.println("i%j等于:"+(i%j));
}

上面这些算数运算符都需要两个值来进行运算,而自增(++)和自减(--)是特殊的运算符,只需要一个值。
自增和自减,有分为前缀和后缀,以自增为例
public static void main(String[] args) {
int i = 10;
System.out.println(i);
int b =++i;
System.out.println(i);
System.out.println(b);
int c =i++;
System.out.println(i);
System.out.println(c);
}

前缀自增,也就是++i,是先进行自增,然后再复制。所以i就变成了11,然后再赋值给了b,所以b也就是11
后缀自增,也就是i++,是先进行赋值,然后再自增。所以c赋值成了11,然后i自增成了12
关系运算符
==:如果左侧数值等于右侧的,条件为真,返回true
!=:如果左侧数值不等于右侧的,条件为真,返回true
>:如果左侧数值大于右侧的,条件为真,返回true
<:如果左侧数值小于右侧的,条件为真,返回true
>=:如果左侧数值大于等于右侧的,条件为真,返回true
<=:如果左侧数值小于等于右侧的,条件为真,返回true
public static void main(String[] args) {
int i = 2;
int j = 3;
System.out.println("i==j:"+(i==j));
System.out.println("i!=j:"+(i!=j));
System.out.println("i<j:"+(i<j));
System.out.println("i>j:"+(i>j));
System.out.println("i<=j:"+(i<=j));
System.out.println("i>=j:"+(i>=j));
}

逻辑运算符
&&:与运算符,两边都为真也就是true,条件才为真
||:或运算符,两边任意一个为真,条件为真
!:非运算符,反转逻辑状态,如果条件为true,则得到的是false
public static void main(String[] args) {
boolean a = false;
boolean b = true;
System.out.println("a&&b:"+(a&&b));
System.out.println("a||b:"+(a||b));
System.out.println("!(a&&b):"+(!(a&&b)));
}

赋值运算符
=:把右侧的值赋给左侧的
+=:把左操作数和右操作数相加赋值给左操作数
-=:把左操作数和右操作数相减赋值给左操作数
*=:把左操作数和右操作数相乘赋值给左操作数
/=:把左操作数和右操作数相除赋值给左操作数
(%)=:把左操作数和右操作数取模后赋值给左操作数
public static void main(String[] args) {
int i = 2;
i+=3;
System.out.print(i);
}
i+=3 等价于 i=i+3,剩下的都类似
还有一些位移运算符和位移赋值运算符,感觉用不到就没看。有兴趣可以自己百度一下。
java学习笔记05-运算符的更多相关文章
- Java学习笔记四——运算符
算术运算符 加减乘除(+.-.*./)就不说了. 求余运算符% 描述:第一个操作数除以第二个操作数,得到一个整除的结果后剩下的值就是余数 注意:求余预算的结果不一定总是整数,当操作数是浮点数时,结果可 ...
- 【原】Java学习笔记004 - 运算符
package cn.temptation; public class Sample01 { public static void main(String[] args) { // 运算符:对常量 或 ...
- Java学习笔记 05 数据包装类
一.包装类 综述 >>java.lang包中的Integer类.Long类和Short类,分别将基本数据类型int.long和short封装成一个类.这些类都是Number的子类. Int ...
- Java学习笔记(04)
Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- Java学习笔记4
Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...
- Java学习笔记心得——初识Java
初识Java 拿到这本厚厚的<Java学习笔记>,翻开目录:Java平台概论.从JDK到TDE.认识对象.封装.继承与多态...看着这些似懂非懂的术语名词,心里怀着些好奇与担忧,就这样我开 ...
- java学习笔记11--集合总结
java学习笔记系列: java学习笔记10--泛型总结 java学习笔记9--内部类总结 java学习笔记8--接口总结 java学习笔记7--抽象类与抽象方法 java学习笔记6--类的继承.Ob ...
- java学习笔记6--类的继承、Object类
接着前面的学习: java学习笔记5--类的方法 java学习笔记4--类与对象的基本概念(2) java学习笔记3--类与对象的基本概念(1) java学习笔记2--数据类型.数组 java学习笔记 ...
- 20145231第二周Java学习笔记
20145231 <Java程序设计>第2周学习总结 教材学习内容总结 本周的学习采用的依然是先看课本,再看视频,然后实践敲代码,最后根据学习笔记总结完成博客. 第三章:基础语法 知识点比 ...
随机推荐
- Mybatis中接口和对应的mapper文件命名为什么需要一样?
背景: 自己对于Mybatis现阶段只处于会用的阶段,有些问题,自己还是想深入的了解一下.就拿Mybatis的接口文件和mapper文件命名需要一致来开始. 解决: 当我们将接口和mapper文件放在 ...
- nginx安装,启动亲测有效
一:安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel 二:安装PCRE,让 N ...
- vi设置行号
首先,我们先打开一个文件,用vim 文件名 就可以直接使用vim打开 我们事先写了一些内容在这个txt里面,我们可以看到如下内容 在这里,我们可以直接敲命令, :set number 或者 ...
- Nginx Http 过滤模块
L69 执行顺序在content阶段后 log阶段前调用的 也就是处理完用户业务后 准备记录处理日志之前 我们可以到nginx http_model.c里查看 数组 执行顺序从下至上顺序执行 copy ...
- 代理与hook
参考:Java 动态代理 代理是什么 为什么需要代理呢?其实这个代理与日常生活中的“代理”,“中介”差不多:比如你想海淘买东西,总不可能亲自飞到国外去购物吧,这时候我们使用第三方海淘服务比如惠惠购物助 ...
- linux shell set命令
Linux set命令用于设置shell. set指令能设置所使用shell的执行方式,可依照不同的需求来做设置. 语法 set [+-abCdefhHklmnpPtuvx] 参数说明: -a 标示已 ...
- [BZOJ 1095] [ZJOI 2007] 捉迷藏
Description 传送门 Solution 先将原树转化成点分树: 然后维护三个堆: \(c[i]\) 保存点分树中子树 \(i\) 中的黑色节点到 \(fa[i]\) 的距离: \(b[i]\ ...
- Windows Server 2012 蓝屏 Wpprecorder.sys 故障
坑爹的园区昨天停电了,导致运行中的服务器中断,来电之后,其中有一台Windows 系统的服务无法运行了,接了个显示器,发现无法进入系统了,挂掉了,这下可完蛋了,虽然做了Radio 磁盘阵列,数据不会丢 ...
- 如何用Electron Js创建第一个应用Hello World
什么是Electron Node.js和Chromium的结合品.允许只使用HTML,CSS和JavaScript来开发跨平台桌面应用. 编写第一个Electron程序(Hello World) 在开 ...
- fast ai-lesson 1 报错解决方法(正则表达式提取文件名)
在运行fast ai lesson 1的代码的时候,运行到的时候报错了 data = ImageDataBunch.from_name_re(path_img, fnames, pat, ds_tfm ...