为什么同时不响应.equals

时间:2019-05-06 17:08:23

标签: java

我正在设置此do-while循环。我需要在哪里更正此代码 所以当给出000000时,循环结束。

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

    String am ;
   {
   do
   {  System.out.println("give am number");
        am = kb.next();   
       if (am.matches("[0-9]+") && am.length() <= 6)
        {System.out.println("am = "+am);
        {break;}}
        else 
       {System.out.println("wrong try again");  
            am = kb.next();
       }   
   } while(!"000000".equals(am));

1 个答案:

答案 0 :(得分:4)

现在,您要检查的是是否相等,不是匹配。 "000000"不等于"[000000]",因此循环继续进行。

目前尚不清楚您想要什么,但我认为仅需去除方括号即可。