前提:两个获取时间的方法,一个是通过获取系统事件format显示完整的年月日时分秒,一个calendar读取时钟的值。
思路:主要想法就是得到系统当前时间,然后提取时钟值,判断在哪些时间段里。
第一种方法:
@SuppressLint("SimpleDateFormat")
//获取系统时间
SimpleDateFormat format=new SimpleDateFormat("yyyy年mm月dd日 HH:mm:ss");
Date date=new Date(System.currentTimeMillis());
String str = format.format(date);
第二种方法:
//获取系统时间
private Calendar c=Calendar.getInstance();
//提取他的时钟值,int型
int s=c.get(Calendar.HOUR_OF_DAY);
String s1="现在是"+s+"点";
String str1="早上好";
具体实现(kotlin):
private fun judgeTime() {
//获取时钟值,HOUR_OF_DAY表示24时计时
val calendar = Calendar.getInstance()
when (calendar[Calendar.HOUR_OF_DAY]) {
0, 1, 2, 3, 4, 19, 20, 21, 22, 23 -> {
//上午
}
in 12..18 -> {
//下午
}
else -> {
//晚上
}
}
}