I’m developing an android app on eclipse, when I try some code like
switch(String){
......
}
it give me the following error
Cannot switch on a value of type String for source level below 1.7. Only convertible int values or enum variables are permitted
so I changed the compiler to 1.7, then it give me another error
Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tools > Fix Project Properties.
So, is there anyway to let switch(String) works in android application?
or I have no choice but to use
if(){}
else if(){}
else if(){}
........
switchstatement onStringobjects is a new feature introduced in Java 1.7. Unfortunatelly Android requires version 1.6 or 1.5. This is why you have to forget for some time about such constructions.You can avoid using if-statements-chain by storing the map of methods which will be executed for certain
String:Map<String, Method>. You can always encapsulateMethodit with someHandlerobject. Look here for more info: How to remove large if-else-if chainand
why-cant-i-switch-on-a-string