自己想把问题弄个提问回答的形式  但是发现字符串 不能判断正确性  应该怎么做呢???
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("错误");
}
}}

解决方案 »

  1.   

    你不要用 == 来判断,
    用.equals 来判断试试。
      

  2.   

    额  还没学过.equals 怎么用
      

  3.   


    String str = "aaa"
    String subStr = "aa"
    if (str.equals(subStr)) {
    System.out.println("yiyang")
    } else {
    System.out.println("buyiyang");
    }
      

  4.   

    ==,和equal有很大的区别的。
    判断值相等,用equal。
      

  5.   

    if条件如下改就可以了
    if (answer.equals.(ranswer)) 
    System.out.println("正确"); 
    } else { 
    System.out.println("错误"); 

      

  6.   

    建议朋友去看看API文档或者JDK的原代码中的Object类的equals方法和java.lang.String类中的equals方法
      

  7.   

    方法很好,但是不能应付变化能力太差,eg:"算数运算符、关系运算符、逻辑运算符、  条件运算符、赋值运算符",即中间有空格,还有顺序的问题——"关系运算符、逻辑运算符、条件运算符、算数运算符、赋值运算符"等等,所以最好还是用split(",")来切分一下然后再用equals()来比较。
      

  8.   

    判断字符串的内容相等应该用String类的String a.equals(String b)这个方法,,这个方法是对字符串内容一一比对,完全相同,则返回true,否则返回false.再补充一下..你上面写的answer == ranswer   在引用类型里面,,==是用来判断地址相等的(也可以说是判断引用是否指向同一个地址),基本数据类型是判断值是否相等
    例如:
    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.  
       讲得也不是很清楚,见笑了.!  如果有错误的地方,请大家指出来,我也是初学者 见谅!
      

  9.   

    数值的比较可以用==,如果是对象就用equals方法吧
      

  10.   

    .equal()方法用来判断字符串是否相等。“==”不行的。
      

  11.   

    你不要用 == 来判断, 
    用.equals 
    因为String ranswer;
    是对象,不是数值,
    所以就不能那么写了。。