java中的AM和PM帮助
我在这个程序上遇到了问题。我输入上午时间和下午时间。然而,当我到12点的时候,一切都变得一团糟。它不断地加上13,14,15等等。有没有办法把13=1,14=2,15=3等等都设置好java中的AM和PM帮助,java,Java,我在这个程序上遇到了问题。我输入上午时间和下午时间。然而,当我到12点的时候,一切都变得一团糟。它不断地加上13,14,15等等。有没有办法把13=1,14=2,15=3等等都设置好 String format = "HH:mm:ss a"; SimpleDateFormat time = new SimpleDateFormat(format, Locale.US); System.out.println("enter what time first person is leaving");
String format = "HH:mm:ss a";
SimpleDateFormat time = new SimpleDateFormat(format, Locale.US);
System.out.println("enter what time first person is leaving");
int leaving1 = in.nextInt();
System.out.println("enter if 1(am) 2(pm)");
int ampm = in.nextInt();
if(ampm==1&&m2==2){
而(leaving1您的时间格式不正确
根据的文档,HH:mm:ss a
将始终以24小时表示法生成时间格式,因为H
用于输出24小时时间值
解决方法很简单:将它改为小写的h。如果你想在1到10之间的小时内使用前导零,请使用2
String format = "h:mm:ss a";
或:
这听起来像是在使用24小时表示法,它废除了AM和PM。您必须向我们提供您的代码示例,以便我们能够获得更好的图片,尽管我觉得PSR的答案可能会对您有所帮助。即使它以24小时时钟格式存储,也不用担心,您可以使用Simp将其转换为12小时时钟leDateFormat。但请确保SimpleDateFormat应该在方法中本地初始化,因为它不是线程安全的。我添加了一些示例代码@Makotowhy't leaving1 print out?(在第二个代码段中)why't leaving1 print out?(在第二个代码段中)这不是我要回答的问题……看起来你有点偷偷地把它带了进来。但是,你有一个无限循环。如果你要在循环中使用它,你最好弄清楚为什么不更新leaving1
。leaving1是我输入的一个数
String format = "h:mm:ss a";
String format = "hh:mm:ss a";