public static long checkedAdd(long a, long b) {
long result = a + b;
checkNoOverflow((a ^ b) < 0 | (a ^ result) >= 0);
return result;
}
我很感兴趣为什么布尔逻辑 | 在这里使用。为什么不使用条件短路||?
public static long checkedAdd(long a, long b) {
long result = a + b;
checkNoOverflow((a ^ b) < 0 | (a ^ result) >= 0);
return result;
}
我很感兴趣为什么布尔逻辑 | 在这里使用。为什么不使用条件短路||?