小编Dal*_*ito的帖子

Java int 格式化?

我希望用户输入 Local.Time 从 00 到 23 和从 00 到 59 的小时和分钟,我将其扫描为整数。它可以工作,但对于从 00 到 09 的值,int 会忽略 0 并将其放置为 0,1,2...9 而不是 00,01,02,03...09;这会破坏 Local.Time,例如“10:3”;不是有效的时间格式。

我读过我可以将其格式化为字符串,但我认为这对我没有帮助,因为我需要一个 int 值来构建 LocalTime 以及随后的操作。

有一种方法可以在将变量保留为 int 的同时对其进行格式化?我可以用不同的方式编码来绕过这个吗?我对这些课程的运作方式有误吗?

我对这些概念很陌生

这是我正在使用的代码

int hours;
int minutes;

System.out.println("Input a number for the hours (00-23): ");
hours = scan.nextInt();

System.out.println("Input a number for the minutes (00-59): ");
minutes = scan.nextInt();

LocalTime result = LocalTime.parse(hours + ":" + minutes);

Run Code Online (Sandbox Code Playgroud)

我尝试使用 NumberFormat 类,但在尝试声明其变量时返回错误(比如它是一个抽象变量,无法实例化)

我也尝试使用字符串格式,但我真的不知道之后如何处理该字符串,它要求我提供一个 int 而不是字符串来构建此方法

java string integer localtime java-time

2
推荐指数
2
解决办法
108
查看次数

标签 统计

integer ×1

java ×1

java-time ×1

localtime ×1

string ×1