1

我需要创建一个代码来检查来自用户的输入是否等于双文字长度 3。我的 if 语句是我遇到问题的地方。谢谢

Scanner stdIn= new Scanner(System.in);
String one;
String two;
String three;

System.out.println("Enter a three character double literal ");
one = stdIn.nextLine();

if (!one.length().equals() "3")
{
  System.out.println(one + " is not a valid three character double literal");
}
4

4 回答 4

7

比较

if (one.length() != 3)

代替

if (!one.length().equals() "3")
于 2013-10-18T03:05:48.070 回答
1

if (one.length() != 3)

if (!(one.length().equals(3))

这两种方式都有效。

有关更多详细信息,请参阅此。

https://www.leepoint.net/data/expressions/22compareobjects.html

于 2018-01-08T04:53:27.793 回答
0
if (!(one.length().equals(3)) {
    System.out.println(one + " is not a valid three character double literal");
}

您必须将3作为参数放置在equals函数中(需要一个参数)。

更常见的是==在比较数字时使用。

if (!(one.length() == 3) {
    System.out.println(one + " is not a valid three character double literal");
}

或更简洁:

if (one.length() != 3) {
    System.out.println(one + " is not a valid three character double literal");
}
于 2013-10-18T03:06:21.937 回答
0

您不需要使用 .equals() 作为长度方法返回一个 int。

if ( one.length() != 3 ) { do something; }
于 2013-10-18T03:07:09.067 回答