import java.util.*;
public class Sa6 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入您的用户名:");
String yonghu = input.next();
System.out.print("请输入您的密码:");
int mima = input.nextInt();
if (yonghu == "青" && mima ==123){
System.out.print("欢迎你,青");
  } else {
  System.out.print("对不起,你不是青");
  }
}
}
  就是这样一个程序,我输入用户名是 青   密码是123,但是控制台却显示"对不起,你不是青" 把 青 改成int变量,如1234就可以,如果您有时间,请帮我解答一下,谢谢了

解决方案 »

  1.   

    yonghu == "青"?
    这2个不同的对象怎么可能相等?
    用equals吧
      

  2.   

    if (yonghu.equals("青") && mima ==123) 
      

  3.   

    yonghu == "青" 
    改成 青.equals(yonghu)
      

  4.   

    String类型的==比较的是指向的内存地址。
      

  5.   

    从键盘接受的当然是int型了...ascii
    编码吧...如果是按下"a"键,再输出就是97.除非你强制类型转换.(char).这样才输出a.
      

  6.   

    if (yonghu.equals("青") && mima ==123) 
    我也是新手