• Java语言基础——运算符


    Java运算符
    1数学运算符
     数学运算符: + - * / %
    例子

     1 public class Demo {
     2  public static void main(String[] args) {
     3   int x = 23;
     4   int y = 12;
     5   System.out.println(x+y);//35 加法
     6   System.out.println(x-y);//11 减法
     7   System.out.println(x*y);//276 乘法
     8   System.out.println(x/y);//1 整数的除法取整,会把小数部分丢失
     9   System.out.println(x%y);//11 计算除法的余数   商1余11
    10  }
    11 }


    注意:n%3是周期函数,函数值是 0,1,2,0,1,2,0,1,2.........(常用)

    2  自增(自减)运算符
    自增自减运算符: ++  --
    就是可以将当前变量自我增加(减少)1 的运算符
    * i++,后++,先将i的值作为整个表达的值,然后将i增加1。
    * ++i,先++,先将i增加1,然后将i的值作为整个表达的值。
    例1

     1 public class Demo {
     2  public static void main(String[] args) {
     3   int a = 1;
     4   int b = 1;
     5   b = a++ ;
     6   System.out.println("a:"+a+",b:"+b);
     7   //1 取出a的值 1 作为a++表达式的值
     8   //2 a增加1 ,变为2
     9   //3 执行赋值运算,b被赋值"a++表达式(即1)"的值
    10  }
    11 }
    12 输出结果:
    13 a:2,b:1


    例2

     1 import java.util.Scanner;
     2 
     3 public class Demo {
     4  public static void main(String[] args) {
     5   int a = 1;
     6   a = a++; 
     7   System.out.println("a:"+a);
     8   //1 "a++表达式"的值为1
     9   //2 等号右边的a+1变为2
    10   //3 执行赋值运算,左边的a被赋值"a++表达式(即1)"的值
    11  }
    12 }
    13 输出结果:
    14 a:1


    3  逻辑与比较运算
    逻辑运算:与(并且)&&   或(或者)|| 非(否则)!
    &&和||被称作短路运算符,还有“&”和"|"称作非短路运算符(使用的很少,逻辑不合理)
    短路运算符和非短路运算符的区别
    * 短路运算符[条件1&&条件2],如果条件1成立,则条件2不执行
    * 非短路运算符[条件1 & 条件2]2个条件都执行

    例子1

     1 public class Demo {
     2  public static void main(String[] args) {
     3   int age = 68;
     4   char sex = '男' ;
     5   if(sex=='女'&& age++>60){        //判断sex =='女'为false,age++>60不执行
     6    System.out.println("请进");//如果性别为女,年龄大于60,输出“请进“
     7   }
     8   System.out.println(age);//68
     9  }
    10 }
    11 输出结果:
    12 68


    例子2

     1 public class Demo {
     2  public static void main(String[] args) {
     3   int age = 68;
     4   char sex = '男' ;
     5   if(sex=='女'& age++>60){        //两句都执行,非短路运算符
     6    System.out.println("请进");//如果性别为女,年龄大于60,输出“请进“
     7   }
     8   System.out.println(age);//68
     9  }
    10 }
    11 输出结果:
    12 69


    注:“|“和"||"也一样

    比较运算符,比较变量的值:>(大于) >=(大于等于)  <( 小于)
          <=(小于等于)  ==(等于)  !=(不等于)
    例子

     1 public class Demo {
     2  public static void main(String[] args) {
     3   int a = 2;
     4   int b = 3;
     5   boolean c = a==b;   //这里的==可以换成> ,>=
     6   System.out.println(c);//false
     7   boolean d = a!=b;   //这里的!=可以换成<,<=
     8   System.out.println(d);//true
     9  }
    10 }


    4 条件运算符(3元运算符,三目运算符)
    条件表达式的语法:[条件表达式? 表达式1:表达式2]
    当条件表达式为true的时候,表达式1作为整个表达式的值,否则表达式2作为整个条件表达式的值
    例子

     1 public class Demo {
     2  public static void main(String[] args) {
     3   int age = 68;
     4   char sex = '男';
     5   //年龄<25或者性别=女的人记100
     6   //年龄>=25或者性别=n男的记90
     7   int a = age <25||sex =='女'?100:90;
     8   System.out.println(a);//90
     9  }
    10 }
    11 输出结果为90


    例:分页业务逻辑

     1 public class Demo {
     2  public static void main(String[] args) {
     3   Scanner sca = new Scanner(System.in);
     4   int total = sca.nextInt();//假设用户输入了total条数据
     5   int size = 10;//规定每页显示10条
     6   /*如果是int page = total/size
     7    * 假设total = 23,那int page =total/size=2
     8    * 最后一页被截取
     9    */
    10   //此时需要用三目运算符来表示
    11   int page = total%size==0 ? total/size : total/size+1;
    12   //如上表示如能除尽,则刚好,否则加一页
    13   System.out.println(total + "条数据需要"+page+"页");
    14  }
    15 }
  • 相关阅读:
    如何编写一个有效的缓存
    [深入Maven源代码]maven绑定命令行参数到具体插件
    java.util.ServiceLoader的用法
    非阻塞算法-栈
    非阻塞算法-简单的计数器
    Excelbatis-一个将excel文件读入成实体列表、将实体列表解析成excel文件的ORM框架,简洁易于配置、可扩展性好
    教你如何迭代地遍历二叉树
    [开源项目]Shell4Win,一个在Windows下执行shell命令的解释器
    [LeetCode]Single Number II
    CAS5.3服务环境搭建
  • 原文地址:https://www.cnblogs.com/hqr9313/p/2439718.html
Copyright © 2020-2023  润新知