我有一串:“上午9点至下午5点” 我想减去这两个数字并找出小时数的差异。
答案 0 :(得分:1)
int intervalHours(String input) {
String[] ts = input.split("-"); // {"9AM", "5PM"}
return toHours(ts[1]) - toHours(ts[0]);
}
int toHours(String t) {
int h = Integer.parseInt(t.substring(0, t.length() - 2));
if (t.endsWith("PM"))
return h == 12 ? 12 : (h + 12);
else
return h == 12 ? 0 : h;
}
// ...
System.out.println(intervalHours("9AM-5PM"));
答案 1 :(得分:-1)
public void time()
{
String t="12AM-5PM";``
StringTokenizer st=new StringTokenizer(t,"-");
String initialTime=st.nextToken();
String finalTime=st.nextToken();
int t1=0;
int t2=0;
if(initialTime.contains("AM"))
{
t1=Integer.valueOf(initialTime.replace("AM",""));
}
else
{
t1=Integer.valueOf(initialTime.replace("PM",""))+12;
}
if(finalTime.contains("AM"))
{
t2=Integer.valueOf(finalTime.replace("AM",""));
}
else
{
t2=Integer.valueOf(finalTime.replace("PM",""))+12;
}
System.out.println(t2-t1);
}