从用户获取一个字符串并根据“密码”变量进行检查

时间:2013-12-08 15:16:15

标签: string passwords

我正在尝试创建一个程序,该程序从用户获取字符串并根据“密码”变量进行检查。如果密码相同,则打印“有效”,否则打印“无效”

这是我到目前为止所看到的,它看起来对我来说是正确的,但显然不是。

import java.util.*;

class WS6Q5 {
public static void main (String[] args){
    Scanner in=new Scanner(System.in);

    String s =" ";
    int x = 123;


    System.out.println("Please type in the Password");
    s=in.nextLine();


    if (s.length()==x){
        System.out.println("Access Granted");
    }

    else if (s.length()!=x){
        System.out.println("Invalid");
    }
}

1 个答案:

答案 0 :(得分:0)

正如人们所料,s.length()为您提供字符串s的字符长度。您的变量x设置为整数(不是字符串!)值123。所以你的if语句是看x是123个字符长。可能不是你想要的!

  1. 您可能希望x成为字符串。 String x = "123"

  2. 您想要将x的与s的值进行比较。查看String.equals()http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#equals(java.lang.Object)