一道很简单的JAVA题

来源:百度知道 编辑:UC知道 时间:2024/06/15 12:48:48
用IF实现, 用户名与控制台输入的用户名相同 且 密码与控制台输入的密码相同

满足 两个条件 则输出 welcome
不满足则输出 sorry

我自己做的代码如下
import java.util.*;
public class S6 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成方法存根
Scanner input=new Scanner(System.in);

String a="numb";
int pass1=123;

System.out.println("请输入用户名");
String a1=input.next();

System.out.println("请输入密码");
int pass2=input.nextInt();

if(a==a1&&pass1==pass2)
{
System.out.print("welcome");
}
else
{
System.out.println("sorry");
}
}

}

不管正确不正确 总是输出sorry 请各位帮忙看看

1、密码要用String类型
2、String类型比较要用equals()方法

import java.util.*;
public class S6 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成方法存根

String a="numb";
String pass1="123";

System.out.println("请输入用户名");
Scanner input=new Scanner(System.in);
String a1=input.next();
System.out.println("请输入密码");
String pass2=input.next();

if(a.equals(a1)&&pass1.equals(pass2) )
{
System.out.print("welcome");
}
else
{
System.out.println("sorry");
}
}

}

注意,字符串比较相等不能用==,应该用String.equals()方法
此处if条件改为if(a.equals(a1)&&pass1==pass2)

你用a.equals(a1)代替a==a1试试