請(qǐng)問(wèn)怎樣用equals方法來(lái)寫(xiě)?
public?class?HelloWorld?{ ????public?static?void?main(String[]?args)?{ //?定義一個(gè)字符串 String?s?=?"aljlkdsflkjsadjfklhasdkjlflkajdflwoiudsafhaasdasd"; ????????String?y="a"; ????????//?出現(xiàn)次數(shù) int?num?=?0; ???????? ?????????//?循環(huán)遍歷每個(gè)字符,判斷是否是字符?a?,如果是,累加次數(shù) for?(int?x=0;x<s.length();x++?) { ????????????//?獲取每個(gè)字符,判斷是否是字符a if?(?(s.charAt(x)).equals(y)??)?{ ????????????????//?累加統(tǒng)計(jì)次數(shù) num++;? } } System.out.println("字符a出現(xiàn)的次數(shù):"?+?num); } }
這樣寫(xiě)會(huì)報(bào)錯(cuò),怎樣用equals方法來(lái)寫(xiě)呢?
2016-02-25
public?class?HelloWorld?{
????public?static?void?main(String[]?args)?{
????????//?定義一個(gè)字符串
????????String?s?=?"aljlkdsflkjsadjfklhasdkjlflkajdflwoiudsafhaasdasd";
????????String?y="a";
????????//?出現(xiàn)次數(shù)
????????int?num?=?0;
?????????
?????????//?循環(huán)遍歷每個(gè)字符,判斷是否是字符?a?,如果是,累加次數(shù)
????????for?(int?x=0;x<s.length();x++?)
????????{
????????????//?獲取每個(gè)字符,判斷是否是字符a
????????????if?( String.valueOf(s.charAt(x)).equals(y)
??)?{
????????????????//?累加統(tǒng)計(jì)次數(shù)
????????????????num++;?
????????????}
????????}
????????System.out.println("字符a出現(xiàn)的次數(shù):"?+?num);
????}
}
2022-03-22
注意中英文,希望你繼續(xù)支持慕課網(wǎng):P
2016-02-25
s.charAt(x)是char類(lèi)型,屬于基本數(shù)據(jù)類(lèi)型,不能直接調(diào)用equals()方法,所以將s.charAt(x)轉(zhuǎn)換為包裝類(lèi)就可以了,代碼如下
public class HelloWorld {
? ? public static void main(String[] args) {
? ? ? ? // 定義一個(gè)字符串
? ? ? ? String s = "aljlkdsflkjsadjfklhasdkjlflkajdflwoiudsafhaasdasd";
? ? ? ? // 出現(xiàn)次數(shù)
? ? ? ? int num = 0;
? ? ? ? ?// 循環(huán)遍歷每個(gè)字符,判斷是否是字符 a ,如果是,累加次數(shù)
? ? ? ? for (int x=0;x<s.length();x++ )
? ? ? ? {
? ? ? ? Character c = s.charAt(x); ? ?//將基本類(lèi)型轉(zhuǎn)換為包裝類(lèi)
? ? ? ? ? ? // 獲取每個(gè)字符,判斷是否是字符a
? ? ? ? ? ? if ( c.equals('a') ?) {
? ? ? ? ? ? ? ? // 累加統(tǒng)計(jì)次數(shù)
? ? ? ? ? ? ? ? num++;?
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? System.out.println("字符a出現(xiàn)的次數(shù):" + num);
? ? }
}