十四届蓝桥杯java第一期模拟赛 时间差编译问题

【问题描述】

小蓝有一个充电器,可以使用不同的电压和电流充电。 给定充电器工作的记录,请计算在这个记录期间总共通过充电传输了多少电能。 【输出格式】

输出一个整数,表示总共通电的电能为多少焦耳,其中 1 焦耳等于 1 伏乘以1 安乘以 1 秒。

【样例输入】

3
 12:00:00 12 1
 12:01:02 5 2
 12:01:10 0 0

【代码实现】

import java.util.Scanner;
public class Main {
          
   
	public static void main(String[] args) {
          
   
		Scanner in = new Scanner(System.in);
		//System.out.println("请输入记录的条数:");
		int n = in.nextInt();
		Time c = new Time();
		int J=0;
		int t0 = 0,t1 = 0;
		int U,I,I0=0,U0 = 0;
		int t;
		//System.out.println("请输入时间"+"电压"+"电流");
		for(int i=0;i < n;i++){
          
   
	        String s = in.next();
	        U = in.nextInt();
	        I = in.nextInt();
	        t = c.timeToSec(s);
	        t1 = t-t0;
	        J += t1*I0*U0;
	        t0 = t;
	        I0 = I;
	        U0 = U;
		}
		System.out.println(J);
	}
}
class Time{
          
   
	public static int timeToSec(String instr) {
          
   
		String[] a = instr.split("\.");
		String[] b = a[0].split(":");
		return Integer.valueOf(b[0]) * 60 * 60 + Integer.valueOf(b[1]) * 60
				+ Integer.valueOf(b[2]);
	}
}

【反思】

在循环中用了及其繁琐的处理方式,让整体显示并不清晰透彻,目前无法进行处理
,希望有大佬指点或者寄托于未来的自己。
经验分享 程序员 微信小程序 职场和发展