Java 如何从字符串变量中获取小时和分钟?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/21828200/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
How to get hours and minutes from a String variable ?
提问by user2219097
I have a String timme = "13:10"
. I was wondering how would I best go about getting the hours and minutes and converting them into integers. i.e. int hours = 13 , int minute = 10. I know a for-loop wouldn't be the most efficient way, is there anything simpler?
我有一个String timme = "13:10"
. 我想知道如何最好地获取小时和分钟并将它们转换为整数。即 int hours = 13 , int minute = 10. 我知道 for 循环不是最有效的方法,有没有更简单的方法?
采纳答案by user3317558
回答by Hamid Shatu
You can try this...
你可以试试这个...
String time = "13:10";
SimpleDateFormat formatter = = new SimpleDateFormat("hh:mm");
Date dTime = formatter.parse(time);
int hour = dTime.getHours();
int minute = dTime.getMinutes();
回答by Ilia Kopylov
Better use Date
and DateFormat
:
更好地使用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
回答by Sivakumar S
You could use Calendar
object of java instead of Date
object,
您可以使用Calendar
java 的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();
}
回答by Venkat Ram Reddy Kolla
JAVA 8
爪哇 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);