DateTime
代表一个人的生日,我该如何计算他们的年龄?
发布于 2018-08-10 12:30:50
我认为迄今为止的任何答案都没有提供以不同方式计算年龄。例如,参见东亚年龄估算与西方年龄相比:https://en.wikipedia.org/wiki/East_Asian_age_reckoning。
任何真正的答案都必须包括本地化。在这个例子中,Strategy Pattern(https://en.wikipedia.org/wiki/Strategy_pattern)可能是有序的。
发布于 2018-08-10 14:00:34
简单易懂的解决方案。
// Save today's date.
var today = DateTime.Today;
// Calculate the age.
var age = today.Year - birthdate.Year;
// Go back to the year the person was born in case of a leap year
if (birthdate > today.AddYears(-age)) age--;
但是,这假设你正在寻找西式年龄观念和不使用East Asian reckoning(https://en.wikipedia.org/wiki/East_Asian_age_reckoning。
https://stackoverflow.com/questions/-100000540
复制相似问题