不是说你,你这代码太乱了吧,为什么不用StringTokenizer,一下了就搞定

解决方案 »

  1.   

    这段代码冗余太多,就算不用StringTokenizer,你的代码也写得太长了
      

  2.   

    随便看了一下。class StringTest {
        public static void main(String[] args) {
            String str = ".192.168.10.16";
            String newstr = str;
            int count;
            int count2;
            int i = 0;
            int k = 0;
            String[] stra = new String[4];
            while (i <= str.length()) {
                count = str.indexOf('.');
                if (count != -1) {
                    str = str.substring(count + 1);
                    count2 = str.indexOf('.');
                    if (count2 == -1) {
                        str = str.substring(count);
                        System.out.println(str);
                        //System.out.println(k);
                        stra[k] = str;//超低级错误
                        k++;
                        break;
                    } else {
                        newstr = str.substring(count, count2);
                        str = str.substring(count2);
                        System.out.println(newstr);
                        stra[k] = newstr;
                        //System.out.println(k);
                    }
                    k++;
                }
            }
            System.out.println("一共有数据" + k + "个");
            for (int j = 0; j < stra.length; j++) {  //超低级错误
                System.out.println(stra[j]);
            }
        }
    }
    你用的方法不好,应该多看一下api。