劃重點丨詳解Java流程控制語句知識點

摘要:流程控制語句就是用來控制程序中各語句執行的順序,下面將詳細介紹java流程控制語句。

本文分享自華爲雲社區《java知識點問題精選之流程控制語句》,原文做者:breakDraw 。java

流程控制語句就是用來控制程序中各語句執行的順序,下面將詳細介紹java流程控制語句。segmentfault

Q: break後面加一個label標籤是作什麼的?像下面這樣:dom

ABC:
while(t++<5){
    for(int i=0;i<n;i++){
        if(i==1)
     break ABC;
   }
}

A: break+label標籤 是用於從內部退出多層循環的, 上面的例子就是直接從for內部直接退出到while的外面了。code

Q: continue後面加一個label標籤是作什麼的?像下面這樣:blog

ABC:
while(t++<5){
    for(int i=0;i<n;i++){
        if(i==1)
    continue ABC;
   }
}

A: 直接contine到ABC的後面,即用於contine到最外層循環, 即走到while(t++<5)那邊繼續走索引

Q: switch的default陷阱1,如下輸出什麼接口

int i = 0;
switch (i) {
  default:
    System.out.println("default");
  case 0:
    System.out.println("0");
  case 1:
    System.out.println("1");
}

A: 輸出"0 1", default都是最後再匹配的。get

Q:case後面能夠跟變量嗎?
例如
case a:
case b:
這樣子it

A:不能夠,case後面只能跟常量。社區

Q: switch的default陷阱2,如下輸出什麼

int i = 3;
switch (i) {
  default:
    System.out.println("default");
  case 0:
    System.out.println("0");
  case 1:
    System.out.println("1");
}

A: 輸出"default 0 1", 匹配到default以後,若是沒有break仍是會一直往下走。

Q: switch() 能識別哪些類型?

A:
JDK1.0-1.4 數據類型接受 byte short int char
JDK1.5 數據類型接受 byte short int char enum(枚舉)
JDK1.7 數據類型接受 byte short int char enum(枚舉),String 六種類型
PS: 上面提到的基本類型的包裝類型也是支持的。

Q: return-finally陷阱1: finally能經過修改變量,來更新return的變量值嗎

int f() {
  int a = 1;
  try {
      return a;
  }
  finally {
      a=2;
  }
}

A:不能, f返回1。
(PS:注意下若是是a引用的話,不能改變返回的a的引用, 可是能夠改變a的引用裏的屬性)

Q: return-finally陷阱2: finally裏也return時,返回哪一個?

int f() {
  try {
      return 1;
  }
  finally {
      return 2;
  }
}

A:返回finally裏的,返回2。

Q: for-each和for-index 哪一個快?(就是for(num:nums)和for(int i=0;i<n;i++))

A: 和場景有關。引用評論區2個小夥伴給的信息:

  • 若實現了RandomAccess接口,那麼使用for-index是優於for-each的吧
  • for-each 比 for-index 快,是否是能夠這樣考慮:

    for-each 是經過內部的迭代器進行遍歷的,相似於索引;
    for-index 是經過 index 計算偏移量的方式遍歷。
    —— 這樣一來:
    對 ArrayList 這樣的連續結構來講,for-each 和 for-index 的效率應該不相上下;
    而對 LinkedList 這樣的鏈式列表,for-each 的索引優點就體現出來了。

Q: 何時無法用for-each代替for-index?

A: 須要往迭代器中插入元素或者刪除元素時。(這會破壞迭代器結構)

點擊關注,第一時間瞭解華爲雲新鮮技術~

相關文章
相關標籤/搜索