我如何将 String 转换为 int?
How i convert String to int?
这是代码,我正在尝试将字符串类型的分钟转换为整数类型,但出现 NumberFormatException 错误,任何人都可以帮助我,我如何处理这种情况。谢谢。
import java.util.Date;
class DateDemo
{
public static void main(String args[])
{
// Instantiate a Date object
Date date = new Date();
// display time and date
String str = String.format("Current Minutes : %tM", date );
try
{
int a = Integer.valueOf(str);
System.out.print(a);
}
catch(NumberFormatException e)
{
System.out.println("Error is : "+e);
}
}
}
使用
String str = String.format("%tM", date );
您遇到异常是因为您尝试将字符串 "Current Date/Time : xx" 转换为数字;
LocalTime now = LocalTime.now(ZoneId.of("Indian/Mahe"));
int currentMinuteOfHour = now.getMinute();
System.out.println(currentMinuteOfHour);
在我的电脑上刚刚打印出来
53
无需将分钟格式化为字符串并解析回来。
Date
class 也早已过时(无双关语意)。最好使用 java.time
,现代 Java 日期和时间 API。与它一起工作要好得多。正如您所见,它提供了更简单的代码。
当前分钟取决于时区。因此,请在我输入 Indian/Mahe 的位置提供您的预期时区。您可以使用当前的 JVM 时区设置:ZoneId.systemDefault()
。您的程序的其他部分或同一 JVM 中的其他程序 运行 可以随时更改该设置。
你的代码出了什么问题?您的 String.format()
调用产生了一个类似于 Current Minutes : 43
的字符串。这不符合整数的语法(43
本身就符合)。因此,您在尝试使用 Integer.valueOf(str)
.
解析它时遇到了异常
教程 link: Oracle tutorial: Date Time 解释如何使用 java.time
.
这不是获取会议记录的正确方法。如果您使用的是 Java 8 或更高版本,您可以这样做以获得分钟数
LocalDateTime localDateTime=LocalDateTime.now();
System.out.println(localDateTime.getMinute());
这是代码,我正在尝试将字符串类型的分钟转换为整数类型,但出现 NumberFormatException 错误,任何人都可以帮助我,我如何处理这种情况。谢谢。
import java.util.Date;
class DateDemo
{
public static void main(String args[])
{
// Instantiate a Date object
Date date = new Date();
// display time and date
String str = String.format("Current Minutes : %tM", date );
try
{
int a = Integer.valueOf(str);
System.out.print(a);
}
catch(NumberFormatException e)
{
System.out.println("Error is : "+e);
}
}
}
使用
String str = String.format("%tM", date );
您遇到异常是因为您尝试将字符串 "Current Date/Time : xx" 转换为数字;
LocalTime now = LocalTime.now(ZoneId.of("Indian/Mahe"));
int currentMinuteOfHour = now.getMinute();
System.out.println(currentMinuteOfHour);
在我的电脑上刚刚打印出来
53
无需将分钟格式化为字符串并解析回来。
Date
class 也早已过时(无双关语意)。最好使用 java.time
,现代 Java 日期和时间 API。与它一起工作要好得多。正如您所见,它提供了更简单的代码。
当前分钟取决于时区。因此,请在我输入 Indian/Mahe 的位置提供您的预期时区。您可以使用当前的 JVM 时区设置:ZoneId.systemDefault()
。您的程序的其他部分或同一 JVM 中的其他程序 运行 可以随时更改该设置。
你的代码出了什么问题?您的 String.format()
调用产生了一个类似于 Current Minutes : 43
的字符串。这不符合整数的语法(43
本身就符合)。因此,您在尝试使用 Integer.valueOf(str)
.
教程 link: Oracle tutorial: Date Time 解释如何使用 java.time
.
这不是获取会议记录的正确方法。如果您使用的是 Java 8 或更高版本,您可以这样做以获得分钟数
LocalDateTime localDateTime=LocalDateTime.now();
System.out.println(localDateTime.getMinute());