1. Java 的方法Method (函数 Function), 功能, 动作
 1) 方法就是函数: y=f(x)=3x+6;
 2) 方法的语法
   (修饰词)(返回值类型)(方法名)(参数列表){
       //方法体
   }
   public static void main(String[] args){}
   如:
  public static int f(int x){
    int y = 3 * x + 6;
    return y;
  }
 4) 如果有返回值定义就必须有return语句, 返回和返回值类型
     兼容的数据
 5) 方法的参数和方法内部的变量 都是局部变量,
    这些变量作用域只在方法内部!
 6) 实参: 方法调用时候实际传递的参数变量
    形参: 方法的参数定义,是临时变量.
 
2. Java 运算符
 1) 算数运算符  + - * / %
     A. 运算的封闭性(补码运算的封闭性):
        1.同种类型参与运算(可能需要自动类型转换)
        2.返回同种类型(可能发生:上溢出和下溢出)
        3.byte, short, char 按照int运算
        如: int a = 1 + 'A';
     B. 整数的除法是整除, 除以2相当于移位运算(移动小数点)
     C.Java中字面量的运算被Javac优化了, 优化为一个固定的常量.
     D. % 计算除法的余数
        1. 0 对其他数的 余数 是0
        2. n%3 是 周期函数, 函数值 [0,3)
        3. 负数的余数是负数(考试可能出现, 工作中很少用)

2)关系运算(*****)
        ==   !=    >     >=    <     <=         
        a.关系运算符的结果是boolean值。
        b. ==    判断左右俩个操作数是否相等

3)自增(减)运算符(*****)
       i++       i--
      ++i        --i
       i++: 先将i的值赋值给i++,然后i在自增1.
       ++i:先让i自增1,然后将i的值赋值给++i;
       eg:  int i = 20;   int b = i++;        i = 21;   b  =20;
             int i = 20 ;  int b = ++i;         i =21, b =21;

4)逻辑运算符(*****)
          &&      ||    !          &      |         ^
          &&:短路逻辑与      俩个表达式都是true结果是true,否则是false;
          ||:短路逻辑或     俩个表达式只要有一个是true,结果是true,
          ! :逻辑非        !true= false      !false=true
          a.逻辑运算符的结果一定是boolean值,操作数是boolean表达式。
          b.经常使用短路的逻辑或和短路的逻辑与。

短路的与,在发现第一个表达式是false了。第二个表达式不执行了。
         非短路的与,在发现第一个表达式是false了,第二个表达式还要执行。
         短路的或:在发现第一个表达式是true,第二个表达式不在执行。
         非短路的或:在发现第一个表达式是true,第二个表达式还要执行。
    
        &:非短路的与
        | :非短路的或    
        ^:逻辑异或:  俩个操作相同结果是false,俩个操作数不同结果是true.
   
   5)条件运算符(三目运算符号)(****)
        条件表达式?表达式1:表达式2;
        判断一个数能被另外一个数整除,取余看结果是否等于0。   
        判断一个数是否是奇数还是偶数,对2取余看结果是否等于0;
 
   6)赋值运算符(*****)
        =         +=    -=      *=     /=      %=
        int age = 23;
        age +=2;//等价于 age = age+2;
        age *= 2;//等价于 age= age*2;

注意:
        =     赋值运算符。
        ==:  关系运算符  判断俩个数是否相等。

7)移位运算符
         &:按位与
         | : 按位或
         ^: 按位异或
         ~:按位取反
         <<:有符号左移
         >>:有符号右移
         >>>: 无符号右移
     
         移位运算性能比较高。
         位运算是在二进制的基础上进行的。
         最后的结果是数。

7)运算符的优先级和结合性:

    int i = 1+2+3+4;  从左向右
    int a = 23;    从右向左
    a.    = 的优先级最低,()的优先级最高。
    b.    如果想让优先级的运算符先运算,可以加()控制;
    c.    算术运算符 >  关系运算符 >逻辑运算符
    d.    在逻辑运算符中,     ! >  && >  ||
    e.    从右向左结合只有 赋值运算符,   三目运算符,单目运算符,其他运算符的结合性都是从左向右。

3. 分支流程控制
 1) if ... else
   语法: if(布尔表达式){
          //语句块..
        }else{
          //语句块
        }
   嵌套: if(布尔表达式1){
          //...
        }else if(布尔表达式2){
          //...
        }else if(布尔表达式3){
          //...
        }else{
          //...
        }
        
   if(){
     if(){
       if(){
         //?
       }
     }
   }
   
   
 2) switch ... case
   语法: switch: 开关, case: 情况下
     switch(整数表达式){
       case 整数常量1:
         //语句序列
         break;
       case 整数常量2:
         //语句序列
         break;
       default:
         //语句序列
     }
  A. switch条件: 只能是整数(int byte char short)表达式
     switch 不能处理long 或其他类型
  B. case 只能是整数(int byte char short)常量, 不能使用
     变量及表达式. 如: '中'
  C. break 跳转到switch结束继续执行, 可以根据业务逻辑是否使用
    经常都写break
 
4. 循环控制
 1) While 循环控制
  语法:
  while(布尔表达式){
    //循环体 语句序列
  }

                                                              若有不完善的地方请大家多提意见,转发时请注明出处!

java运算符优先级与流程控制的更多相关文章

  1. Java基础语法(4)-流程控制

    title: Java基础语法(4)-流程控制 blog: CSDN data: Java学习路线及视频 1.程序流程控制 流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定 ...

  2. JAVA入门基础及流程控制

    JAVA入门基础及流程控制 数据类型 位 存储单位 eg:0001 0011 八位 字节 byte 处理数据单位 一字节等于八位 eg:1b=0011 0001 类变量: static int num ...

  3. Java基础语法与流程控制

    Java基础语法与流程控制 跟着狂神学Java的第二天O(∩_∩)O~,养成一个总结的习惯 志同道合的小伙伴可以一起学习狂神的视频 本节地址:https://www.kuangstudy.com/co ...

  4. Java运算符优先级(转)

    转自:http://www.cnblogs.com/gw811/archive/2012/10/13/2722752.html Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 说明 ...

  5. 【转】Java运算符优先级

    原文网址:http://www.cnblogs.com/gw811/archive/2012/10/13/2722752.html Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 ...

  6. Java基础之程序流程控制

    Java中的程序流程控制 Java中的程序流程分为三种结构:①顺序结构:②分支结构:③循环结构 一.顺序结构 Java中定义成员变量的时候,采用的是前向引用,也就是后面的变量可以引用之前定义好的变量. ...

  7. 【java基础】Java运算符优先级

    Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 说明 1 . 点 从左到右 双目 ( ) 圆括号 从左到右   [ ] 方括号 从左到右   2 + 正号 从右到左 单目 - 负号 ...

  8. Java基础语法02——流程控制

    流程控制:顺序结构.分支结构(if-else.switch-case).循环结构(for.while.do-while)

  9. Java - day002 - 运算符,位运算,流程控制

    1 运算符 +-*/               (+)   既是数学运算 ,也是 字符串链接 %                  求余  /  求模  (进口大麻袋) ==             ...

随机推荐

  1. 【LeetCode】232. Implement Queue using Stacks

    题目: Implement the following operations of a queue using stacks. push(x) -- Push element x to the bac ...

  2. 简单RPC框架-业务线程池

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  3. Ext & Java 上存图片 Demo

    Ext & Java 上存图片 Demo Ext <html> <head> <script id="microloader" type=&q ...

  4. 手机app微信支付后台处理流程

    第一步:客户在手机app确认订单,提交订单后,app将订单详情传给后台,后台将订单存入数据库,将存入数据库的id返回给app. 第二步:这时候手机端app会让客户选择哪种付款方式,我们做的是微信,所以 ...

  5. redis内存管理

    Redis主要通过控制内存上线和回收策略来实现内存管理. 1. 设置内存上限 redis使用maxmemory参数限制最大可用内存.限制的目的主要有: 用户缓存场景,当超出内存上限maxmemory时 ...

  6. Elasticsearch学习随笔(一)--原理理解与5.0核心插件部署过程

    最近由于要涉及一些安全运维的工作,最近在研究Elasticsearch,为ELK做相关的准备.于是把自己学习的一些随笔分享给大家,进行学习,在部署常用插件的时候由于是5.0版本的Elasticsear ...

  7. voa 2015.4.29

    Nepal has declared three days of mourning for the victims of Saturday's 7.8 magnitude earthquake tha ...

  8. jvm004 解析与分派

    解析 所有方法调用中的目标方法在Class文件里面都是常量池中的符号引用,在类加载的解析阶段,会将其中的一部分符号引用转化为直接引用.这种解析的前提是:方法在程序真正运行之前就有一个可确定的调用版本, ...

  9. poj 1161 Walls

    https://vjudge.net/problem/POJ-1161 题意:有m个区域,n个小镇,有c个人在这些小镇中,他们要去某一个区域中聚会,从一个区域到另一个区域需要穿墙,问这些人聚到一起最少 ...

  10. 2017年1月1日 App Store中的所有应用都必须启用 App Transport Security安全功能

    2017年1月1日 App Store中的所有应用都必须启用 App Transport Security安全功能,否则极有可能被拒! 在WWDC 2016开发者大会上,苹果宣布了一个最后期限:到20 ...