1
我試圖從二進制字符串解析一個潛在的Long值,但是當我嘗試這樣做時仍然出現錯誤。Long.parseLong錯誤
public String func1(String B, String C, String D)
{
long b = Long.parseLong(B, 2);
long c = Long.parseLong(C, 2);
long d = Long.parseLong(D, 2);
String value = Long.toString((b & c) | (b & d), 2);
return value;
}
Exception in thread "main" java.lang.NumberFormatException:
For input string: "1010101010101010101010101010101010101010/*....*/10101011"
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Long.parseLong(Unknown Source)
...
任何人都可以解釋這一點嗎? 謝謝!
那麼實際的字符串有多長? (我假設它不*實際*有'/*...*/'?) –
爲了測試目的,字符串長度爲32位,但可以超過這個長度。 – BonBon
但是您是否確實已驗證字符串長度不超過64(如果第一個字符爲1,則爲63),並且字符是否有效(零和1,可選減號)? – RealSkeptic