亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

請問怎樣用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方法來寫呢?

正在回答

3 回答

//你通過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);

????}

}

0 回復 有任何疑惑可以回復我~
#1

_Jack_Han_ 提問者

非常感謝!
2016-02-26 回復 有任何疑惑可以回復我~

注意中英文,:P

0 回復 有任何疑惑可以回復我~

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);

? ? }

}


0 回復 有任何疑惑可以回復我~
#1

_Jack_Han_ 提問者

非常感謝
2016-02-26 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Java入門第三季
  • 參與學習       409766    人
  • 解答問題       4543    個

Java中你必須懂得常用技能,不容錯過的精彩,快來加入吧

進入課程

請問怎樣用equals方法來寫?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號