运算符

常见的java运算符,包括:算术运算符、关系运算符、逻辑运算符、赋值运算符、条件运算符、字符串连接运算符

java 点运算符 java运算符笔记_编程语言


常见的运算符如下表:

算术运算符

+、-、*、/、%(取模)、++ 、–

关系运算符-

>、>=、<、<=、==、!=

逻辑运算符

&(逻辑与)、(逻辑或)、!(逻辑非)、&&(短路与)、(短路或)

赋值运算符

=、+=、-=、*=、/=、%=、^=、&=、

位运算符

&(按位与)、(按位或)、^(按位异或)、~(按位取反)

条件运算符

布尔表达式?表达式 1:表达式 2 (三目)

字符串连接运算符

+

其它运算符

instanceof、new

算术运算符

++ 表示自加1
++既可以写在变量前面也可以写在变量后面。

public class yunSuanFu{
   public static void main(String[] args){
      int m=20;
      int n=m++;
      System.out.println(n);//20
      System.out.println(m);//21
   }
}

java 点运算符 java运算符笔记_System_02


例如:

int d =60;
System.out.println(++d);//61
//可以拆解为
//int temp = ++d;
//System.out.println(d);//61

关系运算符

所有的关系运算符的运算结果都是布尔类型,不是true就是false,不可能是其他的值。
注意区分:

= :赋值运算符
== :关系运算符,判断是否相等

逻辑运算符

逻辑运算符有:&、|、!、^、&&、||。
逻辑运算符的特点:逻辑运算符两边要求都是布尔类型,并且最终的运算结果也是布尔类型。

对于逻辑与&来说,只要有一边是false,结果就是false;只有两个都是true,结果才是true。
对于逻辑或| 来说,只要有一边是true,结果就是true。

短路与&&:使用短路与&&的时候,当左边的表达式为false的时候,右边的表达式不会执行,这就是短路。

短路与(&&)和逻辑与(&)的区别:
短路与(&&)和逻辑与(&)实际上最终的运行结果是完全相同的,只不过短路与(&&)会存在短路现象。
从效率来说,短路与(&&)比逻辑与(&)高。

短路或||:短路或(||)和逻辑或(|)实际上最终的运行结果是完全相同的,只不过短路或(||) 会存在短路现象。

赋值运算符

基本赋值运算符:=
执行赋值运算符 “=” 的时候,右边的优先级比较高,所以先执行右边的表达式。

扩展的赋值运算符:+=、-=、*=、/=、%=
在写扩展赋值运算符的时候两个符号之间不能有空格。
使用扩展赋值运算符的时候,永远不会改变运算结果的类型。
例如:
byte x = 100;
x += 1;
从x变量被定义时就是byte类型,那么x变量的类型就永远是byte,不会改变,不论后面是多大的数。

条件运算符

条件运算符属于三目运算符,它的**语法结构是:布尔表达式?表达式1:表达式2。**
它的运行原理是这样的,先判断布尔表达式的结果是true 还是false,如果是 true,则选择表达式1 的结果作为整个表达式的结果,反之则选择表达式 2 的结果作为整个表达式的结果。

//三目运算符最经典的用法
boolean sex = true;
//当布尔变量sex 为true 则结果是'男',反之'女'
char gender = sex ? ' 男 ' : ' 女 '; System.out.println("性别:" + gender); //男
sex = false;
gender = sex ? ' 男 ' : ' 女 ';
 System.out.println("性别:" + gender); //女

字符串连接运算符

“+”运算符在java 语言中有两个作用,作用一是对数字进行求和运算,作用二就是字符串连接运算
当“+”运算的时候,两边的操作数都是数字的话,一定会进行求和运算。
只要其中有一个操作数是字符串类型,那么一定会进行字符串拼接运算,字符串拼接之后的结果还是字符串类型。
需要注意的是,当一个表达式当中有多个“+”,并且在没有小括号的前提下,遵循自左向右的顺序依次执行
例如:

int a = 10;
int b = 20;
//加号两边都是int 类型,执行求和运算
int c = a + b;
/*以下代码虽然有两个加号,第一个加号在双引号当中,
*不起任何作用,只是一个普通字符串,第二个加号由于
*左边操作数是一个字符串,所以这个加号一定会进行
*字符串连接,连接之后的结果还是一个字符串。*/
System.out.println("a + b = " + c); //a + b = 30

System.out.println(a + " + " + b + " = " + a + b);

怎么接收用户键盘输入

//怎么接收用户键盘输入:
java.util.Scanner s = new java.util.Scanner(System.in);
int i = s.nextInt();
//接收整数
System.out.println("请输入要接收的整数:");
String  str = s.next();
//接收字符串
System.out.println("请输入要接收的字符串:");