其他
老婆总是问我时间多久?于是我做了这个工具(附源码)。。。
大家好,我是D哥
点击关注下方公众号,Java面试资料 都在这里
大家好,我是 D哥~~
众所周知,我们四川男人都是上得厅堂、下得厨房、自带做饭技能的魅力男人~~
在我们四川有个方言称谓叫 “ 耙耳朵 ”,别个省份的男人不理解,还笑话这个,他们都不懂,真正爱老婆的四川男人都是 “ 耙耳朵 ”。
老婆想吃啥,我都给安排。毕竟只要饭菜做得好,下周的零花钱就能来个 Double !
天气越来越热了,老婆大人说早上不想吃抄手了,就家里煮煮粥喝。
家里的电饭煲有定时功能,前一天晚上定好时间,早上起床就能喝上粥,美滋滋!
但是,每次定时都得提前算好时间,也就是:定时时间 = 吃饭时间 - 当前时间 - 煮粥耗时。
每次都要算时间,很麻烦,就想着个 App 来算,没想到还真就让我找着了!
App 名就叫:煮饭,开发者开发这个 App 也是为了算这个定时时间,整个 App 就这么一个功能,超单纯!
App 目前只支持安卓,iOS指定是没戏了,iOS不用等了。
这个功能的算法逻辑很简单,让用户明确吃饭时间和电饭煲的煮饭时长,然后再三者相减就行,也就是上面说的 定时时间 = 吃饭时间 - 当前时间 - 煮粥耗时。
"ui";
showInputUI();
ui.statusBarColor("#e2eafc")
// toast(device.width)
//显示输入界面
function showInputUI() {
ui.layout(
<frame background="#e2eafc" >
<img w="1" src="https://s3.ax1x.com/2020/11/14/DCTerF.jpg"/>
<vertical h="auto" margin="0 20">
<linear>
<text id="currentTime" margin="0 25" gravity="left" textStyle="bold" color="#111111" size="18">当前时间:</text>
</linear>
<linear >
<text text="请选择吃饭时间" textStyle="bold" textColor="black" textSize="18sp" />
<timepicker id="eatTime" timePickerMode="spinner" />
</linear>
<text text="请输入煮饭时长:" textStyle="bold" textColor="black" textSize="18sp" />
<input id="inputTime" margin="0 3" marginTop="-2" w="*" gravity="center" hint="默认煮饭时长70分钟" textSize="16sp" />
<linear gravity="center">
<button id="submit" text="开始计算" w="auto" style="Widget.AppCompat.Button.Colored" />
</linear>
<linear>
{/* <text text="直线无限进度条" textColor="black" textSize="16sp" marginTop="24"/> */}
<progressbar w="*" h="20" indeterminate="true" style="@style/Base.Widget.AppCompat.ProgressBar.Horizontal" />
</linear>
<linear gravity="left" marginTop="20">
<text id="Timer" textStyle="bold" color="#111111" size="25"></text>
</linear>
<linear gravity="left">
<text id="BookingTime" textStyle="bold" color="#111111" size="25"></text>
</linear>
</vertical>
</frame>
);
}
var Hours, Minutes, Seconds;
//循环显示当前时间
setInterval(() => {
var today = new Date();
Hours = today.getHours()
Minutes = today.getMinutes()
Seconds = today.getSeconds()
if (today.getHours() < 10) {
Hours = "0" + today.getHours()
}
if (today.getMinutes() < 10) {
Minutes = "0" + today.getMinutes()
}
if (today.getMinutes() < 10) {
Minutes = "0" + today.getMinutes()
}
if (today.getSeconds() < 10) {
Seconds = "0" + today.getSeconds()
}
var NowTime = Hours + ":" + Minutes + ":" + Seconds
ui.currentTime.setText("当前时间:" + NowTime)
}, 1)
ui.submit.click(() => {
var cTime, cHours, cMinutes;
var cookingTime, eatHours, eatMinutes, eatTotalTime, totalTime, BookingTime, sHours, sMinutes;
// log("当前时间"+Hours)
//获取吃饭时间
eatHours = ui.eatTime.getCurrentHour();
eatMinutes = ui.eatTime.getCurrentMinute();
eatTotalTime = eatHours*60 + eatMinutes;
// log(eatTotalTime)
//获取煮饭时长,由于我家的默认是70分钟,所以默认值为70
if (ui.inputTime.getText() == "") {
cookingTime = 70;
// log(cookingTime);
} else {
cookingTime = ui.inputTime.getText()
// log(cookingTime);
}
//获取当前总时长
totalTime = parseInt(Hours) * 60 + parseInt(Minutes);
// log("当前时间后"+Hours)
//计算预约时间
if (eatHours - Hours < 0) {
BookingTime = eatTotalTime + 24 * 60 - cookingTime - totalTime;
} else {
BookingTime = eatTotalTime - cookingTime - totalTime;
}
// log(BookingTime)
//显示信息
sHours = Math.floor(BookingTime / 60);
sMinutes = BookingTime % 60;
//校验煮饭时间
var checkHours = parseInt(Hours) + sHours;
var checkMinutes =parseInt(Minutes) + parseInt(sMinutes);
log(checkMinutes)
if (checkHours > 24) {
checkHours = checkHours-24;
}
if (checkMinutes > 60) {
checkMinutes =checkMinutes-60;
checkHours++;
}
ui.Timer.setText("电饭煲将在:" + checkHours + "点" + checkMinutes + "分煮饭")
ui.BookingTime.setText("电饭煲的预约时间是:" + sHours + "小时" + sMinutes + "分")
})
快手二面:竟然被问到消息队列 RabbitMQ,太难了。。。 服务压测发现怪异现象,一顿排查,揪出“TIME_WAIT”这个内鬼~ 这款基于 Spring Boot 的BBS系统,改改就能卖钱,拿来即用(附项目地址)
扫描下方二维码,回复关键字【 java】