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

请问怎样用equals方法来写?

public class HelloWorld {
    public static void main(String[] args) {
		// 定义一个字符串
		String s = "aljlkdsflkjsadjfklhasdkjlflkajdflwoiudsafhaasdasd";
        String y="a";
        // 出现次数
		int num = 0;
        
         // 循环遍历每个字符,判断是否是字符 a ,如果是,累加次数
		for (int x=0;x<s.length();x++ )
		{
            // 获取每个字符,判断是否是字符a
			if ( (s.charAt(x)).equals(y)  ) {
                // 累加统计次数
				num++; 
			}
		}
		System.out.println("字符a出现的次数:" + num);
	}
}

这样写会报错,怎样用equals方法来写呢?

提问者:_Jack_Han_ 2016-02-25 22:29

个回答

  • 慕工程1651139
    2016-02-25 23:24:27
    已采纳

    //你通过s.charAt(x) 返回值是char类型,而char类型并没有equals()函数,所以会报错,你可以将char类型通过String.valueOf()转成String,再来使用equals()函数。

    public class HelloWorld {

        public static void main(String[] args) {

            // 定义一个字符串

            String s = "aljlkdsflkjsadjfklhasdkjlflkajdflwoiudsafhaasdasd";

            String y="a";

            // 出现次数

            int num = 0;

             

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

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

            {

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


                if ( String.valueOf(s.charAt(x)).equals(y)


      ) {

                    // 累加统计次数

                    num++; 

                }

            }

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

        }

    }

  • 慕移动9181930
    2022-03-22 23:36:58

    注意中英文,:P

  • charles93
    2016-02-25 23:42:48

    s.charAt(x)是char类型,属于基本数据类型,不能直接调用equals()方法,所以将s.charAt(x)转换为包装类就可以了,代码如下

    public class HelloWorld {


        public static void main(String[] args) {

            // 定义一个字符串

            String s = "aljlkdsflkjsadjfklhasdkjlflkajdflwoiudsafhaasdasd";

            // 出现次数

            int num = 0;

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

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

            {

            Character c = s.charAt(x);    //将基本类型转换为包装类

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

                if ( c.equals('a')  ) {

                    // 累加统计次数

                    num++; 

                }

            }

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

        }

    }