所谓运算符,自然都用来做计算的符号。在java中,一般用两种方式来区分运算符:
1. 按符号连接的操作数个数区分,可以分为:单目运算符,双目运算符,三目运算符。
2. 按功能来区分,可以分为:
-算术运算符
-赋值运算符
-关系运算符
-逻辑运算符
-位运算符
-其他运算符
按操作数分类
这种分类方式很容易理解,但是对于使用来说,并不友好。因为我们在选择运算符时通常都是根据功能来选择,这里就简单的按操作数的方式分下类,相信大家也是一看就懂:
单目:+(取正)-(取负) ++(自增) - -(自减)
双目:+ - * / %(取余)
三目:a>b?true:false 说明:当a大于b的时候,为true(也就是冒号之前的值),否则为false;这整个运算符包括一个关系运算符(可以是“>”"<""!="等等),一个“?”,一个“:”,冒号前后需要有两个表达式或者是值或者是对象。
运算符号连接几个操作单位就是几目,除此之外也没有什么多说的了!!!
算数运算符
算数运算符 | + | - | * | / | % | ++ | – |
---|---|---|---|---|---|---|---|
作用 | 相加求和(取正) | 求差(取负) | 乘积 | 除以 | 取模(余数) | 自增 | 自减 |
算数运算符是最常用到的运算符,也是我们日常生活中常用到的,比较容易学习。常规的加减乘除,%为取余数,自增和自减用一段代码来说明:
public class Operator {
public static void main(String[] args) {
int a = 5;
int b,c,d,f,g,h;
b = 1+a; //相加
System.out.println("b="+b+",a="+a); //b=6,a=5
c = 9-a; //相减
System.out.println("c="+c+",a="+a); //c=4,a=5
int l = 2;
d = ++l; //先l=l+1;再d=l
System.out.println("d="+d+",l="+l); //d=3,l=3
int m = 3;
f = m++;//先f=m;再m=m+1
System.out.println("f="+f+",m="+m); //f=3,m=4
int n = 4;
g = --n;//先n=n-1;再g=n
System.out.println("g="+g+",n="+n); //g=3,n=3
int o = 6;
h = o--;//先h=o;再o=o-1
System.out.println("h="+h+",o="+o); //h=6,o=5
}
}
//如果使用+,-对一个值取正负的话,尽量不要有空格,例如- a 。这样做在某些编译器中会报错
关系运算符
关系运算符 | == | != | > | >= | < | <= |
---|---|---|---|---|---|---|
作用 | 等于 | 不等于 | 大于 | 大于等于 | 小于 | 小于等于 |
关系运算符是用来判断两个操作数的对等关系,返回值为boolean。
看一段代码:
//关系运算符
public class TestOpe8{
public static void main(String args[]){
System.out.println(3>2); //true
System.out.println(5>=6); //false
System.out.println(9<4); //false
System.out.println('a'<=63); //false
System.out.println('a'==65); //false
System.out.println('t'!=54); //true
System.out.println(true!=false); //true
System.out.println(false==false); //true
}
}
boolean类型只能比较相等和不相等,不能比较大小;
>=的意思是大于或等于,两者成立一个即可,结果为true,<=亦如此;
判断相等的符号是两个等号,在java中一个等号是赋值。
实际代码中,数值、变量以及运算结果都可以直接参与比较,只是程序中为了增强可读性,有些时候需要将比较分开进行书写。
比较运算符是程序设计中实现数据比较的基础,也是很多逻辑实现的基础,在程序逻辑中,经常通过比较一定的条件,来判断后续的程序该如何执行。