本篇內容介紹了“如何使用Java流程控制語句”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
成都創新互聯公司成立與2013年,是專業互聯網技術服務公司,擁有項目成都做網站、成都網站制作網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元單縣做網站,已為上家服務,為單縣各地企業和個人服務,聯系電話:13518219792
Q: break后面加一個label標簽是做什么的?像下面這樣:
ABC: while(t++<5){ for(int i=0;i<n;i++){ if(i==1) break ABC; } }
A: break+label標簽 是用于從內部退出多層循環的, 上面的例子就是直接從for內部直接退出到while的外面了。
Q: continue后面加一個label標簽是做什么的?像下面這樣:
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都是最后再匹配的。
Q:case后面可以跟變量嗎?
例如
case a:
case b:
這樣子
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: 需要往迭代器中插入元素或者刪除元素時。(這會破壞迭代器結構)
“如何使用Java流程控制語句”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注創新互聯網站,小編將為大家輸出更多高質量的實用文章!
本文題目:如何使用Java流程控制語句
文章來源:http://m.newbst.com/article34/gcegse.html
成都網站建設公司_創新互聯,為您提供全網營銷推廣、網站制作、App設計、網站營銷、品牌網站設計、域名注冊
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯