4 回答

TA贡献1784条经验 获得超9个赞
String
JDK中的实现7
javac
String
case
A switch
String
if
if-else-if
JVM中的交换机
switch
tableswitch
lookupswitch
switch
String
lookupswitch
tableswitch
.
O(1)
tableswitch
O(log(n))
lookupswitch
在JDK之前7
enum
String
valueOf
enum
Pill p = Pill.valueOf(str);switch(p) { case RED: pop(); break; case BLUE: push(); break;}

TA贡献1874条经验 获得超12个赞
ValueEnum enumval = ValueEnum.fromString(myString);switch (enumval) { case MILK: lap(); break; case WATER: sip(); break; case BEER: quaff(); break; case OTHER: default: dance(); break;}

TA贡献1898条经验 获得超8个赞
public class Main { /** * @param args the command line arguments */ public static void main(String[] args) { String current = args[0]; Days currentDay = Days.valueOf(current.toUpperCase()); switch (currentDay) { case MONDAY: case TUESDAY: case WEDNESDAY: System.out.println("boring"); break; case THURSDAY: System.out.println("getting better"); case FRIDAY: case SATURDAY: case SUNDAY: System.out.println("much better"); break; } } public enum Days { MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY }}

TA贡献1802条经验 获得超5个赞
添加回答
举报