运算符

加 +
减 -
乘 *
除 / 整数除以整数,得到的仍是整数,只看商,不看余数
取模 %
注意事项
一旦运算中有不同类型的数据,结果将会是范围大的

// int+double --> double +double
  double result = a+2.5;

加法

有三种常见用法

  1. 数值的加法
  2. 对于char类型,计算之前,char会被提升为int,然后再计算。char类型与int类型之间的对照关系见ASCII,Unicode
  3. 对于字符串String来说,加号代表字符串连接操作。任何数据类型和字符串进行连接的时候,结果都会变成字符串。
public class Demo05Plus{
 public static void main(String[] args){
  String str1 = "Hello";
  System.out.println(str1);
  String str2 = "World";
  System.out.println(str1+str2); // HelloWorld
  // String + int --> String
  System.out.println(str1+20); // Hello20
  // String + int + int 
  // String       + int
  // String
  System.out.println(str1+20+30);  // Hello2030
  System.out.println(str1+(20+30));  // Hello50
 }
}

自增自减

自增 ++
自减 –
使用格式: ++num,也可以num++
使用方式:

  1. 单独使用:不和其他任何操作混合
  2. 混合使用:和其他操作混合,例如与赋值混合,或与打印操作混合

使用区别:

  1. 单独使用时,前++与后++没有任何区别
  2. 混合使用时,有【重大区别】
    A、【前++】,那么这个变量【立刻马上+1】,然后拿着结果进行使用 【先加后用】
    B、【后++】,那么首先使用变量本来的数值,然后再让变量+1 【先用后加】
    –同理

注意事项:
只有变量才能使用自增、自减运算符,常量不能

public class Demo06Operator{
 public static void main(String args[]){
  int num1 = 10;
  System.out.println(num1);
  ++num1; //单独使用
  System.out.println(num1);// 11
  num1++;
  System.out.println(num1);// 12
  System.out.println("===============");
  System.out.println(++num1);//前++,结果为13
  System.out.println(num1++);//后++,结果为13
  System.out.println(num1);// 14
 }
}

赋值运算符

= 、 += 、 -= 、 *= 、 /=、 %=
注意事项

  1. 只有变量才能使用赋值运算符,常量不能
  2. 复合运算符中隐含了一个强制类型转换

比较运算符

==、<、>、<=、>=、!=
注意事项:

  1. 比较运算符的结果一定是boolean值
  2. 如果进行多次判断,不能连着写 ,如1<x<3,可以连着写 1<x&&x<3

逻辑运算符

连接两个boolean值
与 &&
或 ||
非 !
注意事项:

  1. 与“&&”,或“||”,具有短路效果,如果根据左边已经可以判断得到最终结果,那么右边的代码不再执行,从而节省一定的性能
  2. 与“&&”,或“||”,如果有多个条件,可以连续写
    条件A&&条件B&&条件C

三元运算符

一元运算符:如取反!、自增++、自减–
二元运算符:如加法+、赋值=
三元运算符:
格式:
数据类型 变量名称 = 条件判断 ? 表达式A:表达式B
条件判断为true,将表达式A的值赋给左侧的变量,繁殖将表达式B的值赋给左侧的变量
注意事项:

  1. 必须同时保证表达式A和表达式B都符合左侧数据类型的要求。
  2. 三元运算符的结果必须被使用

方法(面向对象)

定义一个方法的格式:

public static void 方法名称(){
 方法体
}

方法名称的命名规则和变量一样,使用小驼峰
注意事项:

  1. 方法定义的先后顺序无所谓
  2. 方法的定义不能产生嵌套包含关系
  3. 方法定义好了之后不会执行,如果要执行,一定要进行方法的【调用】
    如何调用方法:
    方法名称();
public class Demo11Method{
 public static void main(String[] args){
  //调用厨子的方法
  cook();
 }
 
 public static void farmer(){
  System.out.println("农民");
 }
 
 public static void seller(){
  System.out.println("小商贩");
 }
 
 public static void cook(){
  System.out.println("厨子");
 }
 
 public static void me(){
  System.out.println("我");
 }
}

jshell:轻量级

是一种命令解析器,在cmd窗口输入jshell即可进入

编译器的两点优化

java两个char相加的过程 java char相加_字符串

选择结构

if-else if-else格式

if(关系表达式){
 执行语句1;
}else if (判断条件2){
 执行语句2;
}
...
else if (判断条件n){
 执行语句n;
}else{
 执行语句n+1;
}

switch格式

switch(表达式) {
 case 常量值1:
  语句体1;
  break;
 case 常量值2:
  语句体2;
  break;
 ...
 default:
  语句体n+1;
  break;
}

switch语句注意事项

  1. 多个case后面的数值不能重复
  2. switch后面小括号当中只能是下列数据类型:
    基本数据类型:byte/short/char/int
    引用数据类型:String字符串、enum枚举
  3. switch语句格式可以很灵活:前后顺序可以颠倒,break语句还可以省略
    匹配哪一个case就从哪一个位置向下执行,直到遇到了break或整体结束为止,下面优case就穿透他