我有一个String time = "13:10"
。我想知道最好的方法是如何获取小时和分钟并将它们转换成整数,例如int hours = 13,int minute = 10。我知道for循环不是最有效的方式,有什么更简单的方法吗?
我有一个String time = "13:10"
。我想知道最好的方法是如何获取小时和分钟并将它们转换成整数,例如int hours = 13,int minute = 10。我知道for循环不是最有效的方式,有什么更简单的方法吗?
试试这种方式,使用 split() 方法,
String timme = "13:10";
String[] time = timme.split ( ":" );
int hour = Integer.parseInt ( time[0].trim() );
int min = Integer.parseInt ( time[1].trim() );
最好使用 Date
和 DateFormat
:
String time = "13:10";
DateFormat sdf = new SimpleDateFormat("HH:mm"); // or "hh:mm" for 12 hour format
Date date = sdf.parse(time);
date.getHours(); // int
date.getMinutes(); // int
String time = "13:10";
SimpleDateFormat formatter = = new SimpleDateFormat("hh:mm");
Date dTime = formatter.parse(time);
int hour = dTime.getHours();
int minute = dTime.getMinutes();
Calendar
对象来代替Date
对象。SimpleDateFormat dateFormatter = new SimpleDateFormat("HH:mm", Locale.ENGLISH);
try {
Calendar c = Calendar.getInstance();
c.setTime(dateFormatter.parse("07:30"));
String hour = String.valueOf(c.get(Calendar.HOUR_OF_DAY));
String mintue = String.valueOf(c.get(Calendar.MINUTE));
System.out.println("Hour: " + hour);
System.out.println("Minute: " + mintue);
} catch (ParseException e) {
e.printStackTrace();
}
JAVA 8
LocalTime localTime = LocalTime.parse("13:10", DateTimeFormatter.ofPattern("HH:mm"));
int hour = localTime.getHour();
int minute = localTime.getMinute();
System.out.println("Hours : "+hour +" Minutes : "+minute);