Java中的运算符
一:算术运算符
二:赋值运算符
三:比较运算符
四:逻辑运算符
五:位运算符
六:三目(元)运算符
算术运算符有
算术运算符主要作用于整型和浮点型数据,完成算术运算,包括加(+),减(-),乘(*),除(/),取模(%)5种运算。
字符连接运算符
Java语言中对加运算进行了扩展,使它能够连接字符串。
运算符
运算符指明对操作数进行的运算。可以分为一元运算符(例如:++),二元运算符(例如:+,>)和三元运算符(例如: ?:)他们分别对应于1个,2个和3个操作数。
(1)算术运算符:+、-、*、/、%、++(自加1)、--(自减1)
package jibeyufa;
public class ChangLian {
public static void main(String[] args) {
//算术运算符
int a=4,b=6;
int c =a+b;
System.out.println(c);
//这里我是写成一步的
System.out.println("c="+(c = a - b));//结果是-2//这里的+是代表的是链接符
System.out.println("c="+(c=a*b));//24
//分开写是
c=a/b;
System.out.println(c);//结果是0,为什么呢?因为它是int(整数)所以没有小数。
c=++b;//自加一
System.out.println(c);//结果是7,因为b是先自加1然后赋值给c
System.out.println(b);//结果是7
System.out.println(c=b++);//结果是7,为什么这里没有自加1呢,因为++在b后面,所以b先赋值给c再b+1。
System.out.println(b);//结果是8
//自减一样的我就不将了,你们可以去体会下
}
}
(2)关系运算符:>、<、>=、<=、==、!=
package jibeyufa;
public class ChangLian {
public static void main(String[] args) {
//关系运算符,刚刚用的是int现在就用
double a = 12.1, b = 25.12;
boolean c = a > b;//boolean的结果只有true和false
System.out.println(c);//结果是false
System.out.println(c = a < b);//结果是true
System.out.println(c= a >= b);//结果是false
double x = 12.1;//在Java里单个=是赋值,==是等于
System.out.println(c = a >= x);//结果是true
System.out.println(c != a >= x);//结果是false,这里的!就是取true的反。
//剩下就靠兄弟姐妹们自己体会吧。
}
}
(3)布尔逻辑运算符:&(与)、|(或)、!(非)、&&(短路与)、||(短路或)、^(异或)
与(仅左右语句都为真时为真)包括:逻辑与&和短路与&&
或(左右语句有一则或超过一则为真时为真)包括:逻辑或|和短路或||
非(取反、假时为真、真时为假)包括:逻辑非!
异或(左右相异时为真、左右相同时为假)包括:逻辑异或^
package jibeyufa;
public class ChangLian {
public static void main(String[] args) {
float a = 12.f,b = 13.14f,c = 14.1f;//(float小数点结尾必须是f)
System.out.println(c > b & a > b);//结果是false
System.out.println(c > b | a > b);//结果是true
System.out.println(c > b ^ a > b);//结果是true
}
}
(4)位运算符:>>(有符号右移)、<<(有符号左移)、>>>(无符号右移)、&(按位与)、~(取反)、^(按位异或)、|(按位或)
package jibeyufa;
public class ChangLian {
public static void main(String[] args) {
System.out.println(6 & 3);//结果是2
//其他的是一样的套路兄弟们可以去试试
}
}
6的二进制是110,3的二进制是011,我们拿他们每个位进行比较例如6的个位是0,3的个位是1
位运算符中0代表false,1代表true; 所以0 & 1 为0(false),比较后为010,在二进制码010是2所以结果就是2
(5)赋值运算符:=和其扩展赋值运算符(如:+=、-=、*=、/=、%=)
package jibeyufa;
public class ChangLian {
public static void main(String[] args) {
int a = 5 , c = 6;
a+=1;//这里你可以理解为a=a+1
System.out.println(a);//结果是6
a -= 1;//注意这里的a=6,不是5
System.out.println(a);//5
a %= 3;
System.out.println(a);//结果是2
//其他的自己算术兄弟们
}
}
(6)条件运算符:?
package jibeyufa;
import java.util.Scanner;
public class ChangLian {
public static void main(String[] args) {
//键盘扫描器,捕获键盘录入的数据
Scanner sc =new Scanner(System.in);//创建键盘对象
System.out.println("请输入第一个整数:");
int x =sc.nextInt();
System.out.println("请输入第二个整数:");
int v =sc.nextInt();
int a;
//分开写就是
a = x > v ? x : v;
System.out.println(a);//结果看你心意
System.out.println(a = x > v ? x : v);
}
}
大家可以体会一下键盘扫描器