那位大哥大姐帮小弟看看下面的代码,好像只对了一半,请给小弟改改.
import java.util.Scanner;public class dengru {
public static void main(String[] ages) {
Scanner pout = new Scanner(System.in);
String name = "afh";
int mima = 123456;
int cishu = 3;
for (int i = 0; i < 3; i++) {
System.out.print("请输入用户名:");
String name2 = pout.next();
System.out.print("请输入密码:");
int mima2 = pout.nextInt();
if (name2 == name || mima2 == mima) {
System.out.print("欢迎登录MyShopping系统!");
break;
}
else if (name2 != name || mima2 != mima) {
cishu = cishu - 1;
System.out.println("输入错误!你还有" + cishu + "次机会\n");
continue; }

}
System.out.print("对不起,你3次都输入错误!");
}
}

解决方案 »

  1.   

    一眼看过去,比较大的问题是:
      if (name2 == name || mima2 == mima) 
    字符串比较应该用 equals():
      if (name2.equals(name) || mima2 == mima)
    另外,else if 其实多余,改成 else 就行了。
    最后,密码用数字,这个比较怪异。
      

  2.   

    帮你改了试试  String类型的数据判断他们的值是否相等是不能用==号的。要调用equals()函数,还有用户跟密码要同时满足才能等入的所有要用&&号连接。import java.util.Scanner;public class dengru
    {
    public static void main(String[] ages)
    {
    Scanner pout = new Scanner(System.in);
    String name = "afh";
    int mima = 123456;
    int cishu = 3;
    for (int i = 0; i < 3; i++)
    {
    System.out.print("请输入用户名:");
    String name2 = pout.next();
    System.out.print("请输入密码:");
    int mima2 = pout.nextInt();
    if (name.equals(name2) && mima2 == mima)
    {
    System.out.print("欢迎登录MyShopping系统!");
    break;
    }
    else if (name2 != name || mima2 != mima)
    {
    cishu = cishu - 1;
    System.out.println("输入错误!你还有" + cishu + "次机会\n");
    continue; }
    System.out.print("对不起,你3次都输入错误!");
    }

    }
    }
      

  3.   

    O(∩_∩)O谢谢大哥你的指教
    但是还有一个问题
    输入正确了
    输出显示为
    请输入用户名:afh
    请输入密码:123456
    欢迎登录MyShopping系统!对不起,你3次都输入错误!
    好像还有哪里不对?
      

  4.   

    这你可以设置一个boolean变量,初始值为false 成功登陆把它的值设为true,然后跳出循环的时候判断该变量,为true就不打印那段话,false就打印 对不起,你3次都输入错误!;
      

  5.   

    欢迎登录MyShopping系统!对不起,你3次都输入错误!
    好像还有哪里不对?
    这个要放在FOR循环里面…………
      

  6.   

    import java.util.Scanner;public class dengru {
    public static void main(String[] ages) {
    Scanner pout = new Scanner(System.in);
    String name = "afh";
    boolean isRob = false;
    int mima = 123456;
    int cishu = 3;
    for (int i = 0; i < 3; i++) {
    System.out.print("请输入用户名:");
    String name2 = pout.next();
    System.out.print("请输入密码:");
    int mima2 = pout.nextInt();
    if ((name2.equals(name) && mima2 == mima)) {
    System.out.print("欢迎登录MyShopping系统!");
    break;
    } else {
    isRob = false;
    cishu = cishu - 1;
    System.out.println("输入错误!你还有" + cishu + "次机会\n");
    continue;
    } }


    if (isRob == true)
    System.out.print("对不起,你3次都输入错误!");


    }
    }
      

  7.   

    import java.util.Scanner;public class dengru {
    public static void main(String[] ages) {
    Scanner pout = new Scanner(System.in);
    String name = "afh";
    boolean isRob = false;
    int mima = 123456;
    int cishu = 3;
    for (int i = 0; i < 3; i++) {
    System.out.print("请输入用户名:");
    String name2 = pout.next();
    System.out.print("请输入密码:");
    int mima2 = pout.nextInt();
    if ((name2.equals(name) && mima2 == mima)) {
    System.out.print("欢迎登录MyShopping系统!");
    break;
    } else {
    isRob = false;
    cishu = cishu - 1;
    System.out.println("输入错误!你还有" + cishu + "次机会\n");
    continue;


    } }

    if (isRob == true)
    System.out.print("对不起,你3次都输入错误!");


    }
    }
    该了还是不太对
      

  8.   

    import java.util.Scanner;public class dengru
    {
    public static void main(String[] ages)
    {
    boolean temp = false;
    Scanner pout = new Scanner(System.in);
    String name = "afh";
    int mima = 123456;
    int cishu = 3;
    for (int i = 0; i < 3; i++)
    {
    System.out.print("请输入用户名:");
    String name2 = pout.next();
    System.out.print("请输入密码:");
    int mima2 = pout.nextInt();
    if (name.equals(name2) && mima2 == mima)
    {
    temp = true;
    System.out.print("欢迎登录MyShopping系统!");
    break;
    }
    else if (name2 != name || mima2 != mima)
    {
    cishu = cishu - 1;
    if(cishu>0)
    {
         System.out.println("输入错误!你还有" + cishu + "次机会\n");
    } }

    }
    if(!temp)
    {
    System.out.print("对不起,你3次都输入错误!");
    }

    }
    }