我对这段代码有疑问(无法解析方法:'equals(java.lang.String)

我正在尝试使用此 (.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)'


慕的地6264312
浏览 777回答 2
2回答

梦里花落0921

基元没有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

char是原始的。没有原语有equals方法。他们根本没有任何成员。要使此代码正常工作,您必须包装您的charusing Character.valueOf(t)(但您仍然必须编写 type mismatch equals('t'))或者更容易使用的东西t == 't'。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java