拿取醒来时间的平均值,对于这种,我们需要考虑的是设备取到的醒来时间是0点之前的还是0点之后的 这个是值得考虑的
比仿说有如下几个时间
String h_s1 = "08:00";
String h_s2 = "01:00";
String h_s3 = "09:00";
String h_s4 = "23:00";
String h_s5 = "03:00";
有一个0点之前的 取醒来的时间 对于0点之前 相当于取负时间
int h1 = Integer.parseInt((h_s1.substring(0, h_s1.indexOf(":"))))
* 60
+ Integer.parseInt((h_s1.substring(h_s1.indexOf(":") + 1,
h_s1.length())));
int h2 = Integer.parseInt((h_s2.substring(0, h_s2.indexOf(":"))))
* 60
+ Integer.parseInt((h_s2.substring(h_s2.indexOf(":") + 1,
h_s2.length())));
int h3 = Integer.parseInt((h_s3.substring(0, h_s3.indexOf(":"))))
* 60
+ Integer.parseInt((h_s3.substring(h_s3.indexOf(":") + 1,
h_s3.length())));
int h4 = Integer.parseInt((h_s4.substring(0, h_s1.indexOf(":"))))
* 60
+ Integer.parseInt((h_s4.substring(h_s4.indexOf(":") + 1,
h_s4.length())));
int h5 = Integer.parseInt((h_s5.substring(0, h_s5.indexOf(":"))))
* 60
+ Integer.parseInt((h_s5.substring(h_s5.indexOf(":") + 1,
h_s5.length())));
int p = 0;
if (h1 < 12 * 60) {
p = p + h1;
} else {
p = h1-24*60;
}
if (h2 < 12 * 60) {
p = p + h2;
} else {
p = p-24 * 60 + h2;
}
if (h3 < 12 * 60) {
p = p + h3;
} else {
p = p-24 * 60 + h3;
}
if (h4 < 12 * 60) {
p = p + h4;
} else {
p = p-24 * 60 + h4;
}
if (h5 < 12 * 60) {
p = p + h5;
} else {
p = p-24 * 60 + h5;
}
这里的p就是这次取时间的总分钟数 ,这样我们就可以取得平均时间的