我真的需要这里的帮助...
用户正在使用DatePickerDialog选择日期。我正在尝试获取用户选择日期的星期几。
我有以下代码:
DateFormat dateFormat = new SimpleDateFormat("dd/mm/yyyy");
Calendar startDate = Calendar.getInstance();
startDate.setTime(date);
int dayOfWeek = startDate.get(Calendar.DAY_OF_WEEK);
Log.i("ZCF", "Date = " + dateFormat.format(date));
Log.i("ZCF", "Day of Week: " + dayOfWeek );
对于我在2019年1月选择的任何日期,结果都可以:
示例1:
I / ZCF:日期= 13/01/2019 星期几:1
示例2:
I / ZCF:日期= 25/01/2019 星期几:6
示例3:
I / ZCF:日期= 31/01/2019 星期几:5
但是,当我选择除2019年1月以外的其他月份的日期时,我得到的结果是错误的!
以下是一些示例:
示例1:
I / ZCF:日期= 01/02/2019 星期几:3
1-FEB-2019实际上是星期五,而不是星期二!
示例2:
I / ZCF:日期= 05/02/2019 星期几:7
5-FEB-2019实际上实际上是星期二,而不是星期六
示例3:
I / ZCF:日期= 17/04/2019 星期几:5
2019年4月17日实际上是星期三,而不是星期四
有人可以解释一下我在做什么错吗?
答案 0 :(得分:0)
实际上是错误的格式“ mm”,这是问题...我将日期的格式设置为:
const a = [{"col1": 1, "col2": 25},{"col1": 1, "col2": 25},{"col1": 3, "col2": 30}];
console.log(
a.reduce(
(acc, val) => !acc.some(({col1, col2}) => val.col1 === col1 && val.col2 === col2)
? acc.concat(val)
: acc,
[]
)
);
因此结果是格式化日期的月份价值为零,而实际上我总是得到2019年1月的星期几。
感谢您的帮助。