CyberJos is Blogging.
Some stories and gossip from a future teller.
唱歌看書研究,程式小說新詩。搞了個Blog和古文網站,寫些亂七八糟及翻譯文章,玩些小程式和中文化。可惜時間美好人生苦短,沒法一一盡善。夢想是開間小 pub,放喜歡的音樂,喝自己調的酒。
針對 css 支援極差的 IE 可能會無法正常瀏覽本站,強烈建議
Mozilla Firefox
。
本站連結圖示與 Feed:
Blog文章分類:
Java 與程式設計 (22)
Linux 與開放原始碼 (17)
PostgreSQL 與 DB (12)
日本文化和其他語言 (6)
有關愛情 (4)
我和那些貓的事 (13)
時事評論 (10)
站務系統 (21)
新詩散文 (18)
照片寫真 (11)
資訊新知 (34)
網頁設計與瀏覽器 (21)
網路觀察與脈動 (24)
隨筆亂寫 (20)
雜七雜八 (9)
支援標準:
本站架構:
網路運動:
本站授權規範:
Creative Commons License by-nc-sa
請參閱網頁下方之版權說明
Powered By Sylphie 0.1a
[
Home
|
Category
|
Index
]
2011-08-25 02:37:19.218
Java SE 7 新功能與改進 - 1.2 Project Coin - switch 指令支援字串
Category:
Java 與程式設計
在 Java SE 7 中,可以在
switch
述句中使用
String
物件:
// Before Mode mode = null; String day = getDay(); if ("Monday".equals(day) || "Wednesday".equals(day)) { mode = MODE.TEA_TIME; } else if ("Friday".equals(day)) { mode = MODE.BEER; } else if ("Saturday".equals(day) || "Sunday".equals(day)) { mode = MODE.SLEEP; } else { mode = MODE.WORK; } // After Mode mode = null; String day = getDay(); switch (day) { case "Monday": case "Wednesday": mode = MODE.TEA_TIME; break; case "Friday": mode = MODE.BEER; break; case "Saturday": case "Sunday": mode = MODE.SLEEP; break; default: mode = MODE.WORK; }
switch
述句會使用
String.equals
方法來比較每一個
case
標籤的字串物件,因此在
switch
述句中的字串比對是有大小寫分別的。
// Truth in JVM Mode mode = null; String day = getDay(); byte byte0 = -1; switch(day.hashcode()) { case -1984635600: if (day.equals("Monday")) { byte0 = 0; } break; case -897468618: if (day.equals("Wednesday")) { byte0 = 1; } break; case 2112549247: if (day.equals("Friday")) { byte0 = 2; } break; // Others... } switch(byte0) { case 0: case 1: mode = MODE.TEA_TIME; break; case 2: mode = MODE.BEER; break; // Others... }
和一連串的
if-then-else
相比,在
switch
述句中使用字串會更有效率,並且容易閱讀。
Add this article to:
|