已知时间
- t0,t1,t2...ta,tx,ty,tz,tb,tz, 求 ta 到 tb 中距离 tz 最近的一个时间 ,时间范围满足有且只有 ta tb 。不能在 ta 之前 不能在 tz 之后。
- 试过 tz.Sub(ta)和 to.Sub(tb)比较 不行。
- 试了 Before() 也试过 After() 用 for 循环之后时间-4 会退回到 ta 之前。不减 4 无法判断。 有什么其他思路吗?谢谢
感谢各位热心的回复,现在问题解决了.
对比了1978到2178年之间所有的数据 找出了规律.
列表里面的 t0,t1,t2...ta,tx,ty,tz,tb,tz, 是TDB数据经过计算后转换为go的time.Time类型 抱歉我没有提前说明白.
规律就是ta或者tb到tz的差值有三种可能.
某值 特定值
ta=某值同时tb=x
ta=某值同时tb=另一个值
ta tb同时不等于某值.
|
reusApr 6, 2020 via Android
1
都不知道你说啥,代码也不给,一句不行,谁知道你说啥不行? Sub 怎么就不能比较了? After, Before 怎么就不能比较了?你究竟想比较啥?
|
|
mm163Apr 6, 2020
2
Unix()通通转成 int64, 想怎么比较都行。
|
|
cloud0001Apr 6, 2020
3
没听明白
|
|
skys215Apr 6, 2020
4
不能在 tz 之后的话…tb 的意义在哪…?
|
|
5
@skys215 ta tb 二选一 而且 tb 出现的几率极少 千年没见一次 这是万年历当中定冬至前朔的计算
|
|
hwenwurApr 6, 2020 via Android
6
没看明白。求最近的时间点 转成时间戳然后相减取绝对值不行吗
|
|
loadingApr 6, 2020 via Android
7
fmt.Println(tz.(type))
输出是什么 |
|
8
@loading use of .(type) outside type switch
|
|
loadingApr 6, 2020 via Android
9
我也是服了……能不能直接告诉我你用的类型。
import ( "reflect" "fmt" ) func main() { fmt.Println(typeof(v)) } func typeof(v interface{}) string { return reflect.TypeOf(v).String() } |
|
loadingApr 6, 2020 via Android
10
不敢帮了。
|
|
reusApr 6, 2020
11
“t0,t1,t2...ta,tx,ty,tz,tb,tz, 求 ta 到 tb 中距离 tz 最近的一个时间”,这不就是 tb ?
“时间范围满足有且只有 ta tb ”,意义不明 “不能在 ta 之前 不能在 tz 之后”,你这个范围究竟是 [ta, tb] 还是 [ta, tz] ? “试过 tz.Sub(ta)和 to.Sub(tb)比较 不行”,to 哪来的?不行是指什么不行? “试了 Before() 也试过 After() ”,能不能给个表达式来说明你的意思? “用 for 循环之后时间-4 会退回到 ta 之前”,没有代码谁知道你说什么循环? 没人明白你什么思路,更不可能给你其他思路。 |
|
12
@loading time.Time 类型
|
|
13
@reus 谢了
|