java自学新手自编的程序,请教下这段程序有什么毛病?
输入任意字符串, 用 逗号 把字符串分解成字符串数组,中间存在多个逗号示例字符串: fqkhq,t,2t,y,2y,2y,y,2y,2y2y2y2y,yu54,,
我一直运行运行不了,但是我一直找不到毛病。。求教,我是才自学2个月的Java菜鸟,写的不好见笑了
package exp2;
import *;
public class Exp9 {
static int i;
static String s1;
static String s2;
static String s3;
static String[] s5; //定义变量S1 S2 S3 S4 S5
public static void main(String args[]){
BufferedReader red=new BufferedReader(new InputStreamReader(System.in)); //获得输入缓冲流对象red
try{
s1=red.readLine(); //用输入流的readLine()方法读取键盘输入的字符串
}catch(IOException e){
System.out.println("输入参数读取错误");
}
s1.trim(); //清楚S1字符串前后的所有空格
while(s1.indexOf(',')==1)
s1.substring(2); //去掉s1字符串开头的','
if(s1.endsWith(","))
s1.substring(1,s1.length()-1); //去掉s1字符串最后的','
while(s1.indexOf(',')>1);{
s2=s1.substring(1,s1.indexOf(','));//获得s1字符串中第一个','的索引值,把','以及前面的字符串赋给S2数组
s3.concat(s2); //把s2字符串赋给s3
s1.substring(s1.indexOf(','));// 去掉s1字符串','前面的字符串,返回新的s1
while(s1.indexOf(',')==1){
s1=s1.substring(2); //如果新的s1字符串前面有多个',' 则全部去掉
}
}
s3.concat(s1); // 这样最终获得的S3字符串中将无重复的','
String[] s5=s3.split(","); //用 String类的split方法把获得的s3字符串用','分开返回字符数组
for(i=0;i<s5.length;i++){
System.out.println(s5[i]); //输出字符串数组
}
}
}
[ 本帖最后由 herhei3 于 2010-7-31 19:16 编辑 ]