慕的地6264312
2022-07-27 11:18:49
我正在嘗試使用此 (.equals) 方法,但由于某種原因它不起作用。 Scanner verb = new Scanner(System.in); String verb1 = verb.nextLine(); char t = verb1.charAt(verb1.length() - 1); if(t.equals("t")) { System.out.println("Hello"); }錯誤信息是這樣的:cannot resolve method 'equals(java.lang.String)'
2 回答

夢里花落0921
TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超6個贊
基元沒有equals方法(基元沒有任何方法)。你必須使用==:
if(t == 't') {
System.out.println("Hello");
}
或更換為
Character t = verb1.charAt(verb1.length() - 1);
if(t.equals('t')) { // you have to compare 'Character' to 'Character'
System.out.println("Hello");
}

慕姐8265434
TA貢獻(xiàn)1813條經(jīng)驗(yàn) 獲得超2個贊
char
是原始的。沒有原語有equals
方法。他們根本沒有任何成員。要使此代碼正常工作,您必須包裝您的char
using Character.valueOf(t)
(但您仍然必須編寫 type mismatch equals('t')
)或者更容易使用的東西t == 't'
。
添加回答
舉報
0/150
提交
取消