最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

深入講解Java中的流程控制與運(yùn)算符

 更新時間:2015年09月25日 16:52:42   投稿:goldensun  
這篇文章主要介紹了Java中的流程控制與運(yùn)算符,是Java入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下

Java流程控制
Java流程控制的語法與 C/C++ 類似,也有 if...else、while、do...while、for、switch...case等,這里不再講述具體語法,僅舉例說明。

輸出九九乘法表(右上三角):

public class Demo {
  public static void main(String[] args){
    int i, j;
    for(i=1; i<=9; i++){
      for(j=1; j<=9; j++){
        if(j<i){
          //打印八個空格,去掉空格就是左上三角形
          System.out.print("    ");
        }else{
          System.out.printf("%d*%d=%2d ", i, j, i*j);
        }
      }
      System.out.print("\n"); 
    }
  }
}

運(yùn)行結(jié)果:

1*1= 1 1*2= 2 1*3= 3 1*4= 4 1*5= 5 1*6= 6 1*7= 7 1*8= 8 1*9= 9 
    2*2= 4 2*3= 6 2*4= 8 2*5=10 2*6=12 2*7=14 2*8=16 2*9=18 
        3*3= 9 3*4=12 3*5=15 3*6=18 3*7=21 3*8=24 3*9=27 
            4*4=16 4*5=20 4*6=24 4*7=28 4*8=32 4*9=36 
                5*5=25 5*6=30 5*7=35 5*8=40 5*9=45 
                    6*6=36 6*7=42 6*8=48 6*9=54 
                        7*7=49 7*8=56 7*9=63 
                            8*8=64 8*9=72 
                                9*9=81


Java中也有 printf() 語句,用來控制輸出格式,不過實(shí)際開發(fā)中不常用,因?yàn)檩敵龅娇刂婆_的數(shù)據(jù)很少要求嚴(yán)格的格式,一般 println() 和 print() 就夠了。

println() 輸出內(nèi)容后換行,print() 不換行。

又如,求某一年的某一月有多少天:

import java.util.*;
public class Demo {
  public static void main(String[] args){
    int days = 0;
    // 獲取用戶輸入
    Scanner sc = new Scanner(System.in);
    System.out.print("輸入年份:");
    int year = sc.nextInt();
    System.out.print("輸入月份:");
    int month = sc.nextInt();
    
    switch(month){
      case 1:
      case 3:
      case 5:
      case 7:
      case 8:
      case 10:
      case 12:
        days=31;
        break;
      case 4:
      case 6:
      case 9:
      case 11:
        days=30;
        break;
      case 2:
        // 判斷閏年
        if(year%4==0 && year%100!=0 || year%400==0)
          days=29;
        else
          days=28;
        break;
      default:
        System.out.println("月份輸入錯誤!");
        System.exit(0); // 強(qiáng)制結(jié)束程序
    }
    System.out.printf("天數(shù):%d\n", days);
  }
}

運(yùn)行結(jié)果:

輸入年份:2014
輸入月份:02
天數(shù):28

Java中沒有像C語言中的scanf()語句,從控制臺獲取輸入有點(diǎn)麻煩,我推薦使用 Scanner 類,具體語法請大家自行查看API。

Java運(yùn)算符
Java中的運(yùn)算符和C/C++相差無幾。
數(shù)學(xué)運(yùn)算符

數(shù)學(xué)運(yùn)算,結(jié)果為一個數(shù)值。見下表:

關(guān)系運(yùn)算符

關(guān)系運(yùn)算符,結(jié)果為一個布爾值。見下表:

位運(yùn)算符

位運(yùn)算符對整數(shù)的二進(jìn)制形式逐位進(jìn)行邏輯運(yùn)算,得到一個整數(shù)。見下表:

條件運(yùn)算符

Java中也有一個條件運(yùn)算符(三目運(yùn)算符):

  condition ? x1 : x2


condition為一個boolean值。根據(jù)condition,取x1或x2的值。

下面是關(guān)于運(yùn)算符的一個綜合舉例:

public class Demo {
  public static void main(String[] args){
    int a=10;
    int b=10;
    
    int x=10;
    int y=21;
    int z=10;
    
    System.out.println("后自加 a=" + (a++));
    System.out.println("a的值 a=" + a);
    System.out.println("前自加 b=" + (++b));
    
    System.out.println("---------------------");
    System.out.println("說 x>y,對嗎?" + (x>y));
    System.out.println("認(rèn)為 x>y 并且 x<y,對嗎?" + ( (x>y) && (x<y) ));
    System.out.println("認(rèn)為 x>=y 或者 x==y,對嗎?" + ( (x>=y) || (x==y) ));
    System.out.println("認(rèn)為 x<y 或者 x=z,對嗎?" + ( (x<y) || (x==z) ));
    System.out.println("---------------------");
    System.out.println("a&x 的結(jié)果是:" + (a&x));
    System.out.println("a|x 的結(jié)果是:" + (a|x));
    System.out.println("y^z 的結(jié)果是:" + (y^z));
    
    System.out.println("---------------------");
    System.out.println("a 左移2位的結(jié)果是:" + (a<<2));
    System.out.println("y 右移3位的結(jié)果是:" + (y>>3));
  }
}

運(yùn)行結(jié)果:

后自加 a=10
a的值 a=11
前自加 b=11
---------------------
說 x>y,對嗎?false
認(rèn)為 x>y 并且 x<y,對嗎?false
認(rèn)為 x>=y 或者 x==y,對嗎?false
認(rèn)為 x<y 或者 x=z,對嗎?true
---------------------
a&x 的結(jié)果是:10
a|x 的結(jié)果是:11
y^z 的結(jié)果是:31
---------------------
a 左移2位的結(jié)果是:44
y 右移3位的結(jié)果是:2

相關(guān)文章

  • SpringBoot @PostMapping接收HTTP請求的流數(shù)據(jù)問題

    SpringBoot @PostMapping接收HTTP請求的流數(shù)據(jù)問題

    這篇文章主要介紹了SpringBoot @PostMapping接收HTTP請求的流數(shù)據(jù)問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 最好的8個Java RESTful框架

    最好的8個Java RESTful框架

    最好的8個Java RESTful框架,需要的朋友可以參考下
    2016-05-05
  • 詳解Reactor中Context的用法

    詳解Reactor中Context的用法

    在Reactor中提供了Context來替代ThreadLocal,可以實(shí)現(xiàn)一個跨線程的共享變量的透明方式。本文主要為大家介紹了Context的用法的用法,感興趣的可以了解一下
    2023-02-02
  • Spring?boot讀取外部化配置的方法

    Spring?boot讀取外部化配置的方法

    大家好,本篇文章主要講的是Spring?boot讀取外部化配置的方法,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-02-02
  • 詳解Spring AOP自定義可重復(fù)注解沒有生效問題

    詳解Spring AOP自定義可重復(fù)注解沒有生效問題

    本文主要介紹了Spring AOP自定義可重復(fù)注解沒有生效問題,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • JDK21中虛擬線程到底是什么以及用法總結(jié)(看完便知)

    JDK21中虛擬線程到底是什么以及用法總結(jié)(看完便知)

    這篇文章主要給大家介紹了關(guān)于JDK21中虛擬線程到底是什么以及用法的相關(guān)資料,虛擬線程是一種輕量化的線程封裝,由jvm直接調(diào)度和管理,反之普通的線程其實(shí)是調(diào)用的操作系統(tǒng)的能力,對應(yīng)的是操作系統(tǒng)級的線程,需要的朋友可以參考下
    2023-12-12
  • SWT JFace 拖曳效果

    SWT JFace 拖曳效果

    SWT(JFace)體驗(yàn)之拖曳效果
    2009-06-06
  • StringBuilder為什么線程不安全深入講解

    StringBuilder為什么線程不安全深入講解

    這篇文章主要給大家介紹了關(guān)于StringBuilder為什么線程不安全的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用StringBuilder線程具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • SSH框架網(wǎng)上商城項(xiàng)目第20戰(zhàn)之在線支付平臺

    SSH框架網(wǎng)上商城項(xiàng)目第20戰(zhàn)之在線支付平臺

    這篇文章主要為大家詳細(xì)介紹了SSH框架網(wǎng)上商城項(xiàng)目第20戰(zhàn)之在線支付平臺,關(guān)于第三方支付的內(nèi)容從本文開始,感興趣的小伙伴們可以參考一下
    2016-06-06
  • Java?this關(guān)鍵字的使用案例詳解

    Java?this關(guān)鍵字的使用案例詳解

    這篇文章主要為大家介紹了Java?this關(guān)鍵字的使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01

最新評論

南投市| 嘉黎县| 玉门市| 抚宁县| 浮梁县| 桐庐县| 和林格尔县| 文登市| 新宾| 永登县| 台江县| 宁阳县| 平泉县| 常德市| 枣庄市| 泸定县| 香河县| 邵阳市| 文水县| 蓬安县| 平安县| 根河市| 永丰县| 南阳市| 赞皇县| 内丘县| 新河县| 库伦旗| 徐州市| 苏尼特右旗| 万山特区| 聂荣县| 衡山县| 潜山县| 巴林左旗| 乐清市| 陵川县| 元朗区| 榆中县| 偃师市| 东乡县|