java基础语法(二)
一.运算符
算数运算符
- 算数运算符用在数学表达式中,它们的作用和在数学中的作用一样。
操作符 描述 例子 + 两数相加 1+1=2 - 两数相减 2-1=1 * 两数相乘 1*1=1 / 两数相除 1/1=1 % 两数相除的余数 2%1=0 ++ 自增 ++1=2和1++=2 -- 自减 -- 2=1和2-- =1 public class Test(){
public void medth(){
int a=2;
int b=2
//这里会输出4
System.out.println(a+b);
//这里会输出0
System.out.println(a-b);
//这里会输出4
System.out.println(a*b);
//这里会输出1
System.out.println(a/b);
//这里会输出0
System.out.println(a%b); }
}
- ++就是自身加1(每次++都是在自身的基础上+1)
**++在前先自身 +1,然后进行赋值 **
++在后先进行赋值,然后在自身 +1
public class Test(){
//实现++在后面
public void medth(){
int a=2;
int b=0;
b=a++;
//此时的b=2 a先将自己赋值给了b 然后自身在加一
//此时的a=3 输出为2===3
System.out.println(b"==="a);
}
//实现++在前面
public void medth(){
int a=2;
int b=0;
b=++a;
//此时的b=3 a在自身=2的基础上加了1 然后在赋值给b
//此时的a=3 输出为3===3
System.out.println(b"==="a);
}
}
- --就是自身减1(每次--都是在自身的基础上-1)
--在前自身先 -1 然后进行赋值
--在后先进行赋值 然后自身在 -1
public class Test(){
//实现--在后面
public void medth(){
int a=2;
int b=0;
b=a--;
//此时的b=2 a先将自己赋值给了b 然后自身在减1
//此时的a=1 输出为2===1
System.out.println(b"==="a);
}
//实现--在前面
public void medth(){
int a=2;
int b=0;
b=--a;
//此时的b=1 a在自身=2的基础上减了1 然后在赋值给b
//此时的a=1 输出为1===1
System.out.println(b"==="a);
}
}
赋值运算符
赋值运算符的作用就是将常、变量或表达式的值赋给某一个变量
操作符 描述 例子 = 赋值 a=3 += 加等于 a+=3(可以理解为a=a+3) -= 减等于 a-=3(可以理解为a=a-3) *= 乘等于 a *=3(可以理解为a=a *3) /= 除等于 a/=3(可以理解为a=a/3) %= 模等于 a%=3(可以理解为a=a%3) public class Test(){
//
public void medth(){
int a=1;
//这里输出5
System.out.println(a=5);
//此时的a=5 所以a+=5的值为10 (a=a+5)
System.out.println(a+=5);
//此时的a=10 所以a-=5的值为5 (a=a-5)
System.out.println(a-=5);
//此时的a=5 所以a*=5的值为25 (a=a*5)
System.out.println(a*=5);
//此时的a=25 所以a/=5的值为5 (a=a/5)
System.out.println(a/=5);
//此时的a=5 所以a%=5的值为0 (a=a%5)
System.out.println(a%=5);
} }
关系运算符
关系运算符用来比较判断两个变量或常量的大小,关系运算符是二元运算符,运算结果是boolean型,当运算符对应的关系成立的时,运算结果是true,如果不成立是false
操作符 描述 例子 > 大于运算符 a>b >= 大于或等于运算符 a>=b < 小于运算符 a<b <= 小于或等于运算符 a<=b == 相等运算符 a==b != 不相等运算符 a!=b public class Test(){
public void medth(){
int a=1;
int b=2;
//输出false
System.out.println(a>b)
//输出false
System.out.println(a>=b)
//输出true
System.out.println(a<b)
//输出true
System.out.println(a<=b)
//输出false
System.out.println(a==b)
//输出true
System.out.println(a!=b)
}
}
逻辑运算符
把多个条件联合判断,用来判断条件是否成立
操作符 描述 例子 && 短路与:两个表达都是true才返回true a>1&&a!=3 || 短路或:只要有一个表达式为true就返回true a>1||a!=3 ! 逻辑非:如果表达式为ture则返回false 反之返回ture !
public class Test(){
public void medth(){
int a=2;
int b=1;
//a<b为false a!=b为true 这里输出的是false
System.out.println(a<b&&a!=b);
//a<b为false a!=b为true 这里输出的是true
System.out.println(a<b||a!=b);
//a<b为false a!=b为true 这里输出为false
System.out.println(a<b&a!=b);
}
}
注:逻辑运算符操作的都是boolean类型的变量,而且结果也是boolean类型
位运算符
位运算符主要针对二进制,从表面上看似乎有点像逻辑运算符,但是逻辑运算符是针对两个关系运算符来行进运算,而位运算符主要针对两个二进制数的位进行逻辑运算
操作符 | 描述 | 例子 |
---|---|---|
& | 逻辑与:两个表达式都为true时才为true | a>1&a!=3 |
| | 逻辑或:有一个表达式为true时就返回true | a>1|a!=3 |
^ | 逻辑异或:当两个表达式不相同的时候返回true 否则返回false | a>1^a!3 |
~ | 非:0=1,0=1 | |
>> | 右移 :各二进制位全部右移N位,若值为正,则在高位插入0,若值为负,则在高位插入1 | |
<< | 左移 :各二进制位全部左移N位,高位丢弃,低位补0 | |
>>> | 无符号右移 :各二进制位全部右移N位,无论正负,都在高位插入0 |
&&、&、||、|的区别:
&和|:不管左边的表达式是true还是false,右边的表达式也要执行
&&和||:只要执行左边的表达式,如果为true在继续执行右边的表达式,如果为false就直接返回flase,不会再执行右边的表达式
条件运算符
java提供了一个特别的三元运算符(也叫三目运算符)经常用于取代某个类型的if-else语句
public class Test(){
public void medth(){
//给变量c赋值,如果a>b成立 那么c=a,如果a>b不成立 那么c=b
int c=a>b?a:b
}
}
java基础语法(二)的更多相关文章
- Java基础语法(二)<运算符>
运算符: 下面的都是相关的练习: 1.键盘录入一个三位整数数,请分别获取该三位数上每一位的数值 import java.util.Scanner; public class Test02 { publ ...
- Java基础语法(3)-运算符
title: Java基础语法(3)-运算符 blog: CSDN data: Java学习路线及视频 1.算术运算符 算术运算符的注意问题 如果对负数取模,可以把模数负号忽略不记,如:5%-2=1. ...
- JavaSE入门学习6:Java基础语法之运算符和语句(上)
继续接着上篇:JavaSE入门学习5:Java基础语法(一)来看Java的基础语法. 五运算符 运算符是一种"功能"符号,用以通知Java进行相关的运算.比方.我们须要将变量age ...
- Java菜鸟之java基础语法,运算符(三)
赋值运算符 (一)JAVA种的赋值运算符 = ,代表代表的等于,一般的形式是 左边变量名称 = 右边的需要赋的指或者表达式,如果左侧的变量类型级别比较高,就把右侧的数据转换成左侧相同的高 ...
- Java基础语法:运算符
Java 运算符(operator)根据功能分类: 算术运算符:+,-,*,/,%,++,-- 赋值运算符:= 关系运算符:>,<,>=,<=,==,!=,instanceof ...
- Java基础语法<二> 字符串String
1. 代码点与代码单元 Java字符串由char序列组成.大多数的常用Unicode字符使用一个代码单元就可以表示,而辅助字符需要一对代码单元表示. length()方法将返回采用UTF-16编码表示 ...
- Java基础语法(二)之流程控制语句
流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块 .控制语句分为三类:顺序,选择和循环. “顺序结构”代表”先执行a,再执行b”的逻辑.比如,先找个女朋友, ...
- JavaSE入门学习7:Java基础语法之语句(下)
继续接着Java基础语法来:JavaSE入门学习5:Java基础语法(一)和JavaSE入门学习6:Java基础语法(二). 语句 Java经常使用的3种循环:while.do...while,for ...
- Java基础语法(4)-流程控制
title: Java基础语法(4)-流程控制 blog: CSDN data: Java学习路线及视频 1.程序流程控制 流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定 ...
随机推荐
- BSGS 学习笔记
问题:求$a^x\equiv b\ (mod\ p)$的最小正整数解. 这时候就要用到BSGS(拔山盖世)算法.直接进入正题: 设$x=im-n$, 则原式等于$a^{im-n}\equiv b\ ( ...
- 浅析FMT,CMT, SMT区别
FMT(fine-grained multithreading)又叫交叉多线程或指令交错多线程 – 每个时钟周期都进行线程的切换,多个线程交替执行,同一个周期只从一个线程发射指令到功能部件 ...
- 嵌入式linux系统应用开发
关于嵌入式系统 平时大家说的嵌入式其实范围比较广的,是一种软硬件可裁剪,以应用为中心开发的专用系统,硬件平台可以是单片机,或者以ARM系列的处理器.单片机一般直接裸奔程序,不过现在有了好多基于单片 ...
- linux下的node版本管理利器:nvm
nvm是一款node版本管理工具,简单来说,如果你想在一个环境下安装多个node版本,并向自由地切换相关版本,那你就需要使用nvm进行版本管理,有点类似pyenv,也是一款python版本管理工具. ...
- c++之广度优先搜索
广度优先搜索BFS(Breadth First Search)也称为宽度优先搜索,它是一种先生成的结点先扩展的策略. 在广度优先搜索算法中,解答树上结点的扩展是按它们在树中的层次进行的.首先生成第一层 ...
- Oracle 存储过程 批量插入测试数据
有时候需要做DB的效率测试时,需要模拟大量数据.可以根据一条原始数据,通过执行存储过程拷贝出大量数据: CREATE OR REPLACE PROCEDURE proc_msw_strsql IS i ...
- 工作小记[csv文件、admin中filed与list_display区别、ModuleNotFoundError: No module named'xxx'、django创建admin用户]
CSV-Comma Separated Values,CSV文件可以直接用Excel表格打开,如果用文本打开属性之间用逗号隔开,Python有直接操作CSV文件的函数. fileds字段控制“修改添加 ...
- C#LeetCode刷题-双指针
双指针篇 # 题名 刷题 通过率 难度 3 无重复字符的最长子串 24.5% 中等 11 盛最多水的容器 43.5% 中等 15 三数之和 16.1% 中等 16 最接近的三数之和 3 ...
- 02 Arduino-基于串口的学习
1串口通讯的基本理论知识,想必大家都熟悉,这里就不过多的介绍,这里主要花时间来介绍串口的应用 2参考内容如下所示: 3串口通讯所涉及到的函数分析 A if (Serial) 如果串口已经准备好了 ...
- 阿里云日志服务SLS
前言: 刚入职实习了几天,我发现我的任务就是学习阿里云日志服务这块业务内容,这个功能和mysql一样,但是速度和视觉却是甩mysql这类数据库几条街. 当得知公司没人会这项技术后(在这之前我也没听过, ...