自己想把问题弄个提问回答的形式 但是发现字符串 不能判断正确性 应该怎么做呢???
package homework5;
import java.util.Scanner;
public class Home5_2_1 {
public static void main(String args[]) {
Scanner input = new Scanner(System.in);
String ranswer;
// boolean result;
System.out.println("常用哪五种运算符?分别有哪些?");// 算数运算符、关系运算符、逻辑运算符、条件运算符、赋值运算符
String answer = input.next();
System.out.println(answer);
ranswer = "算数运算符、关系运算符、逻辑运算符、条件运算符、赋值运算符";
// result = answer == ranswer?"正确":"错误";
if (answer == ranswer) {
System.out.println("正确");
} else {
System.out.println("错误");
}
}}
package homework5;
import java.util.Scanner;
public class Home5_2_1 {
public static void main(String args[]) {
Scanner input = new Scanner(System.in);
String ranswer;
// boolean result;
System.out.println("常用哪五种运算符?分别有哪些?");// 算数运算符、关系运算符、逻辑运算符、条件运算符、赋值运算符
String answer = input.next();
System.out.println(answer);
ranswer = "算数运算符、关系运算符、逻辑运算符、条件运算符、赋值运算符";
// result = answer == ranswer?"正确":"错误";
if (answer == ranswer) {
System.out.println("正确");
} else {
System.out.println("错误");
}
}}
用.equals 来判断试试。
String str = "aaa"
String subStr = "aa"
if (str.equals(subStr)) {
System.out.println("yiyang")
} else {
System.out.println("buyiyang");
}
判断值相等,用equal。
if (answer.equals.(ranswer)) {
System.out.println("正确");
} else {
System.out.println("错误");
}
例如:
int a=10;
int b=10
System.out.println(a==b); 这里很显然是输出true;再来
Integer a=new Integer(10);
Integer b=new Integer(10);
System.out.println(a==b);
这里输出为false 因为虽然这里a的值确实是和b的值相等,但是引用类型里面用==是判断地址的,每实例化一个对象就新分配一个空间,所以这里的a和b指向的不是同一个引用,所以这里输出为false.
讲得也不是很清楚,见笑了.! 如果有错误的地方,请大家指出来,我也是初学者 见谅!
用.equals
因为String ranswer;
是对象,不是数值,
所以就不能那么写了。。