开发者社区> 问答> 正文

java,scanner输入的字符串,如输入yes判断却不等于yes

 package test;
import java.util.Scanner;
public class Test {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
         Scanner scan=new Scanner(System.in);
         System.out.println("input now");
         String str=scan.next();
         if(str != "yes")
             System.out.println(str);
    }
}

我输入就是输入yes的,下面的if判断就是不相等,应该是scan.next()的返回值中带了什么转义字符吧,这个问题怎么解决?有什么方法能查看到其中的转义字符呢?

展开
收起
蛮大人123 2016-06-07 16:49:02 3390 0
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

    String是个类,用==或!=比较是比较的内存地址,应该使用equals方法进行比较

    2019-07-17 19:30:28
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载