java-我用string输入一串字符,取出最小值,程序没错,但有一些疑问
import java.io.*;
public class test2_111{
public static void main(String a[]){
String s="";
String min="";
boolean flag=true;
try{
BufferedReader in=
new BufferedReader(new InputStreamReader(System.in));
s=in.readLine();
String ss[]=s.split(""); //将字符串拆分在数组ss[]里
min=ss[1];
for(int i=1;i<=s.length();i++){
if(min.compareTo(ss[i])>0) //在java里char可以用‘<’ ‘>’ ‘=' 作比较,string不能
min=ss[i];
}
}
catch(IOException e){}
System.out.println(min);
}
}
以上代码运行出来就是我想要的效果,但是下面的这个代码,我只是将min=ss[1];改成了min=ss[0];,效果就完全不一样了,为什么会出现这样不同的结果?数组是从0开始的,小雪球说我用split取出的第一个字符不是我想要的第一个字符,为什么不是我想要的第一个字符?
import java.io.*;
public class test2_111{
public static void main(String[] args) {
String s="";
String min="";
try{
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
s=in.readLine();
String ss[]=s.split(","); //将字符串拆分在数组ss[]里
min=ss[0];
for(int i=1;i<ss.length;i++){
if(min.compareTo(ss[i])>0) //在java里char可以用‘<’ ‘>’ ‘=' 作比较,string不能
min=ss[i];
}
}
catch(IOException e){}
System.out.println(min);
}
}