gpt4 book ai didi

java - Integer.parseInt 删除前导 0

转载 作者:行者123 更新时间:2023-11-29 04:34:52 24 4
gpt4 key购买 nike

我的程序要求时间,我用 ":" 来分配时间。出于某种原因,如果我之前输入带有 0 的内容作为第一个值,它会将其删除。知道它为什么这样做吗?

这是我的代码:

import java.util.Scanner;

public class ArrivalTime {
public static void main(String[] args) {

Scanner sc = new Scanner(System.in);
boolean rushHour;

System.out.print("Enter The Time Fiona Will Leave For Work (HH:MM): ");
String departureTime = sc.nextLine();

String parts[] = departureTime.split(":");

int departureHour = Integer.parseInt(parts[0]);
int departureMinute = Integer.parseInt(parts[1]);

System.out.println(departureHour + " " + departureMinute);
}
}

最佳答案

int departureHour = Integer.parseInt(parts[0]);
int departureMinute = Integer.parseInt(parts[1]);
System.out.println(departureHour + " " + departureMinute);

Integer.parseInt(ANY_INTEGER_VALUE) 返回整数。例如Integer.parseInt(03) 将返回 3 而不是 03。

如果要显示给定的输入

03:09

因为它是,你应该保持显示的字符串:

System.out.println (parts[0] + " " + parts[1]);

解析为 int 仅用于计算目的。

注意:我在阅读@Elliot 的评论后编辑了以下部分。

或者正如@Elliot 在他的评论中指定的那样:

System.out.printf("%02d %02d%n", departureHour, departureMinute);

关于java - Integer.parseInt 删除前导 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42097336/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com