类型:long/int64
单位:毫秒
long timePoint;
时间戳的起点是1970-01-01 08:00:00(北京时间)
例如:
timePoint = 0
转化成时间点为1970-01-01 08:00:00
timePoint = 4321000
转化成时间点为1970-01-01 08:43:21
关于时间的计算:
判断时间是否经过了一天:
int nowTime;
crossDay = (nowTime - timePoint)/(3600 * 24 * 1000)
crossDay的整数部分就是经过的天数
但是!(如果考虑8点是一天的起点就不用考虑以下了)
日常、包括一些游戏计算经过的天数是按照是否经过0点计算的,所以需要时间戳的起点移动到0点上,可以把时间戳的起点向前移动16个小时,或者向后移动8个小时,在数学公式上就是所有的时间戳都要移动
crossDay = ((nowTime - (0 + 16 * 3600 * 1000))- (timePoint - (0 + 16 * 3600 *1000)))/(3600 * 24 * 1000)
相当于
crossDay = (((nowTime - 16 * 3600 * 1000) - (timePoint - 16 * 3600 *1000))/(3600 * 24 * 1000))/(3600 * 24 * 1000)
也可以
crossDay = (((nowTime + 8 * 3600 * 1000) - (timePoint + 8 * 3600 *1000))/(3600 * 24 * 1000))/(3600 * 24 * 1000)