public class TestIndexOf{
public static void main(String [] args){
String S="FYHVNKIjhfwweyon17284950";
 String sl="abcdefghijklmnopqrst";
 String su="ABCDEFGHIJKLMNOPQRST";
 int lcount=0,ucount=0,ocount=0;
 for(int i=0;i<sl.length();i++){
  char c1=charAt(i);}
 if(sl.indexof(c)!=-1){
  lcount++;
}else if(su.indexof(c)!=-1){
ucount++;
}else {ocount++}
System.out.println(lcount+" "+ucount+" "+ocount);
  }
}

解决方案 »

  1.   

    su.indexOf(c)的意思是c在su中出现的下标的
    c出现了返回的数应该是0到su.length()-1之间的数
    c没有出现就是-1了
      

  2.   

    indexof(c)如果在当前字符串中找到即会返回索引,没返回便会返回-1,
    还有的的for循环桌面只是执行char c1=charAt(i);可能是你太粗心了
      

  3.   

    楼主可以查询一下API中String类的方法,多看看API是很有帮助的
      

  4.   

    public class TestIndexOf{
    public static void main(String [] args){
    String s="FHNKIjhfeon17284950";
     String sl="abcdefghijklmnopqrst";
     String su="ABCDEFGHIJKLMNOPQRST";
     int lcount=0,ucount=0,ocount=0;
     for(int i=0;i<s.length();i++){
      char c=s.charAt(i);
     if(sl.indexOf(c)!=-1){
      lcount++;
    }else if(su.indexOf(c)!=-1){
    ucount++;
    }else {ocount++;}
    }
    System.out.println(lcount+" "+ucount+" "+ocount);
      }
    }
    正确的代码!!!!!!!!!!
      

  5.   

    首先我不明白你到底想要做什么,看你程序,你好象就是统计一下s字符串里的字符出现的次数sl.indexOf(c)!=-1很显然,它是来判断c字符有没有包含在字符串sl里,就比如sl为"abc",字符c为"a"
    这时候sl.indexOf(c)返回的是0,意思就是sl包含字符c,假如sl为"abc",字符c为"d"这时候sl.indexOf(c)返回的是-1,
    所以说indexOf方法的返回值得范围是-1到size()-1之间的。
      

  6.   

    这种问题查查就有了
     INDEXOF 也算是比较常用的方法.