问答详情
源自:2-4 Java 中的 String 类常用方法 Ⅱ

请问下面这个写法怎么不对?

不是说字符串相当于一个数组,判断字符是否为 'a' 的时候为什么不能用 if(s[i]=='a')c ?

提问者:雪梨儿 2016-04-06 14:53

个回答

  • 流逝的回忆已成空白
    2016-05-23 17:34:48

    package test;

    public class HelloWorld2 {

        public static void main(String[] args) {

    // 定义一个字符串

    String s = "aljlkdsflkjsadjfklhasdkjlflkajdflwoiudsafhaasdasd";

    //        byte[] b = s.getBytes();

            // 出现次数

    int num = 0;

            

             // 循环遍历每个字符,判断是否是字符 a ,如果是,累加次数

    for (int i = 0 ; i < s.length() ; i ++){


    System.out.println();

    // 获取每个字符,判断是否是字符a

    if ((s.charAt(i)+"").equals("a")) {

    // 这里先将char类型自动转换成String类型 然后使用.equals 方法进行比较 这种方法就可以了

                    // 累加统计次数

    num ++; 

    }

    }

    System.out.println("字符a出现的次数:" + num);

    }

    }


  • 哈哈111111111111111
    2016-04-13 21:28:18

    public class HelloWorld {

        public static void main(String[] args) {

    // 定义一个字符串

    String s = "aljlkdsflkjsadjfklhasdkjlflkajdflwoiudsafhaasdasd";

            

            // 出现次数

    int num = 0;

            char y='a';

            

             // 循环遍历每个字符,判断是否是字符 a ,如果是,累加次数

    for (int i=0;i<s.length();i++)

    {

                // 获取每个字符,判断是否是字符a

    if (s.charAt(i)==y) {

                    // 累加统计次数

    num++; 

    }

    }

    System.out.println("字符a出现的次数:" + num);

    }

    }


  • Paul666
    2016-04-06 15:10:00

     byte[] m=s.getBytes();

     if(m[i]=='a')

  • Paul666
    2016-04-06 15:08:58

    可以的,你是不是漏写了  byte[] i=s.getBytes();