【问题标题】:Code wont store two zero's when input by the user, instead, stores a single 0 [duplicate]用户输入时,代码不会存储两个零,而是存储一个 0 [重复]
【发布时间】:2016-10-07 16:21:54
【问题描述】:
System.out.println("Please enter the minute(s) that you finished on (MM): ");
    endMin = Integer.parseInt(input.nextLine());

当我将“00”作为输入输入几分钟时,它只在变量中存储“0”。

【问题讨论】:

  • 您将数字与其字符串表示混淆了。
  • input.nextLine() 很可能返回"00",但Integer.parseInt 返回int,而不是字符串。 int 将包含值 0,当以标准形式呈现为字符串时为 "0"。
  • 将变量的类型设置为字符串,然后将它们解析为 int 以后工作吗?
  • 传回给什么?请记住,我们只有上述信息可供使用。
  • @Maeleh 我们不能说。我们不知道您的申请。 int 的值将是 0。

标签: java


【解决方案1】:

为此,您需要将输入的数字保留为字符串。你已经这样做了,所以为了也有一个 int 你可以实际使用你可以让endMin 保持一个字符串(而不是将它转换为一个 int)和类似endMinInt 的东西是转换为一个 int 的值。这样你仍然可以进行你需要的计算,但你也可以准确地告诉用户他们稍后输入的内容(这是我能想到的唯一原因)

    String endMin;
    int endMinInt;
    System.out.println("Please enter the minute(s) that you finished on (MM): ");
    endMin = input.nextLine();
    endMinInt = Integer.parseInt(endMin);

【讨论】:

    猜你喜欢
    • 2022-07-29
    • 1970-01-01
    • 2014-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-01
    相关资源
    最近更新 更多