各位版上朋友好
小弟使用Java不久 最近被問到一個神奇的題目
void bar(Integer a, Integer b) {
if(a != b) return;
if(a > 200) return;
a++;
b++;
b++;
assert a < b;
}
目的是要觸發assertion error
如果用c++可以讓兩個input指向同一個memory address來觸發
但java都是pass by value 不管怎樣a, b都會被當成不同的物件來處理
而因為第二個if的關係 不能傳入a=b=INT_MAX-1 來導致overflow
不知道有什麼解法呢?
謝謝