我增加了兩個十六進制數,並返回它們作爲一個字符串, 我怎麼能存儲字符串值轉換成int?它不適合我。 這是我正在處理的代碼。如何在使用長度時將字符串值保存爲Int值?
的INT A和B都沒有采取NUM1和NUM2爲INT的字符串,我該怎麼辦呢?
public static String Addtion(String num1, String num2){
int sum, carry=0;
int A = num1.length()-1;
int B = num2.length()-1;
String astn="";
if (B < A && B!= A){
num2 = '0' + num2;
B++;
}
while(B>=0){
sum = (con(num1.charAt(A))+con(num2.charAt(B))+carry)%16;
carry= (con(num1.charAt(A))+con(num2.charAt(B))+carry)/16;
astn = toHexChar(sum) + astn;
A--;
B--;
}
return astn ;
}
@redFIVE - 通過我閱讀這篇文章,該另一個問題是不接近重複。儘管這篇文章的標題不是很好,但OP的問題似乎與將String轉換爲int無關。 –
他在他的「問題」中清楚地說過「我如何將字符串值存儲爲int?」 – redFIVE
@redFIVE - 我知道,但請看代碼。 OP正試圖模擬十六進制逐字符添加。 'A'和'B'實際上是十六進制字符串的_lengths_(減1),而不是解析的十六進制值。整個算法在其他情況下是沒有意義的。 OP的問題是由於沒有正確處理這些長度(根據我的答案)。 OP顯然不是以英語爲母語的人,應該對此做出一些補貼。 (請注意,對於我們所知道的,這些可能是10,000位數字的hext字符串,在Java中不可能將其解析爲本地整數類型。) –