日期:2014-05-17  浏览次数:20735 次

这个说转化有错误 怎么解决??
public void isCheck(String doe){
System.out.println(doe); 
switch(doe){
   case "L0101":check[0]=true;break;
   case "L0102":check[1]=true;break;
   case "L0201":check[2]=true;break;
   case "L0202":check[3]=true;break;
   case "L0301":check[4]=true;break;
   case "L0302":check[5]=true;break;
   case "L0303":check[6]=true;break;
   case "L0304":check[7]=true;break;
   case "L0305":check[8]=true;break;
   case "L0401":check[9]=true;break;
   case "L0402":check[10]=true;break;
   case "L0403":check[11]=true;break;
   case "L0404":check[12]=true;break;
  
   case "L0501":check[13]=true;break;
   case "L0502":check[14]=true;break;
   case "L0503":check[15]=true;break;
   case "L0504":check[16]=true;break;
   case "L0505":check[17]=true;break;
   case "L0601":check[18]=true;break;
   case "L0602":check[19]=true;break;
 
}

switch(doe)里面的doe 报红线 项目无法运行
------解决方案--------------------
换成JDK7吧,jdk7之前的版本switch是不支持String的,7支持;

------解决方案--------------------
话不多说,直接给代码了。

public class MyTest {
    private static boolean[] check;
    MyTest()
    {
        check=new boolean[20];
        for(int i=0;i<20;i++)
            check[i]=false;
    }
    public static void main(String[] args) {
        MyTest test=new MyTest();
        test.isCheck_1("L0302");
        test.isCheck_2("L0305");
    }
    public static void isCheck_1(String doe){
        System.out.println(doe); 
        switch(doe){
            case "L0101":
                check[0]=true;break;
            case "L0102":
                check[1]=true;break;
            case "L0201":
                check[2]=true;break;
            case "L0202":
                check[3]=true;break;
            case "L0301":
                check[4]=true;break;
     &nb