本文主要是介绍zzuli oj 1015: 计算时间间隔(java),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目描述
读入两个用“时:分:秒”表示的时间点,计算以秒为单位的时间间隔。
输入
输入有两行,每行是一个用“时:分:秒”表示的时间点。测试数据保证第二个时间点晚于第一个时间点。
输出
输出一个整数,表示时间间隔的秒数。
样例输入
08:00:00
09:00:00
样例输出
3600
先调到java代码再点提交.
import java.util.Scanner;
public class Main {public static void main(String[] args){Scanner in = new Scanner(System.in);String str1 = in.next(),str2 = in.next();String a[] = str1.split(":",3),b[] = str2.split(":",3);//两个,3都可省略int h1 = Integer.parseInt(a[0]),m1 = Integer.parseInt(a[1]),s1 = Integer.parseInt(a[2]),h2 = Integer.parseInt(b[0]),m2 = Integer.parseInt(b[1]),s2 = Integer.parseInt(b[2]);System.out.printf("%d",(h2 - h1) * 3600 + (m2 - m1) * 60 + s2 - s1);}
}
关键是如何读入:
next()读入到空格停止,nextLine()读入到回车停止.因此无法把时间当做数字而把:当做字符读入.
这里采用统一以字符串读入,然后分割调整类型的方式,用到两个函数
.split()
简单说,split在字符串中对指定的字符去除并进行分割,然后返回.
import java.util.*;
public class Main
{public static void main(String[] args){String str = "l i k e,d";String a[] = str.split(" ");//去除空格并在空格处进行分割for(int i = 0;i<a.length;i++)System.out.println(a[i]);}
}
/*输出
l
i
k
e,d
*/
可以用|指定多个查找条件
import java.util.*;
public class Main
{public static void main(String[] args){String str = "l i k e,d";String a[] = str.split(" |,");//去除空格和逗号,并在空格或逗号处进行分割for(int i = 0;i<a.length;i++)System.out.println(a[i]);}
}
/*输出
l
i
k
e
d
*/
还可以指定分割的分数
import java.util.*;
public class Main
{public static void main(String[] args){String str = "l i k e,d";String a[] = str.split(" |,",3);//去除空格或逗号,并在空格或逗号处进行分割,for(int i = 0;i<a.length;i++) //且分成三份System.out.println(a[i]);}
}
/*输出
l
i
k e,d
*/
Integer.parseInt()
将某进制的字符串转换为十进制数返回,默认为十进制
import java.util.*;
public class Main
{public static void main(String[] args) {int num = Integer.parseInt("11",2);//3System.out.println(num);}
}
这篇关于zzuli oj 1015: 计算时间间隔(java)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!