学了Java五天,突然有兴趣写一段特别简单的代码,想试试,代码如下:
刚开始,我使用了==来对String字符串进行比较,后来经测试发现, 无论输入对不对,始终无法得到true的结果
package com.javaStudy.base.Scanner;
import java.util.Scanner;
public class Demo {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String str1 ;
System.out.println("你爱我不?");
str1 = input.nextLine();
if(str1 == "爱你" ){
System.out.println("我也爱你,臭宝");
}else{
System.out.println("sb" );
}
}
}
后经过搜索相关问题发现,String在比较时,是对其存放位置进行比较,而不是其内容,故使用equals来比较
package com.javaStudy.base.Scanner;
import java.util.Scanner;
public class Demo {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String str1 ;
System.out.println("你爱我不?");
str1 = input.nextLine();
if(str1.equals("爱你") ){
System.out.println("我也爱你,臭宝");
}else{
System.out.println("sb" );
}
}
}
得到了true的结果