(判斷Int溢位)劍指 把字串轉換為整數

2021-09-26 01:09:38 字數 661 閱讀 5777

將乙個字串轉換成乙個整數(實現integer.valueof(string)的功能,但是string不符合數字要求時返回0),要求不能使用字串轉換整數的庫函式。 數值為0或者字串不是乙個合法的數值則返回0。

輸入乙個字串,包括數字字母符號,可以為空
如果是合法的數值表達則返回該數字,否則返回0
示例1

複製

+2147483647

1a33

複製

2147483647

0

public class solution 

else if(chars[0] == '+')

index = 1;

int res = 0;

for(int i = index; i'9' || chars[i]<'0')

return 0;

int tmp = res*10 + (chars[i]-'0');

//判斷溢位

if((signal == 1 && tmp>integer.max_value) || (signal == -1 && tmp < integer.min_value))

res = tmp;

}return res*signal;

}}

劍指 把字串轉換成整數

將乙個字串轉換成乙個整數 實現integer.valueof string 的功能,但是string不符合數字要求時返回0 要求不能使用字串轉換整數的庫函式。數值為0或者字串不是乙個合法的數值則返回0。public class test4 public static int convertconve...

劍指offer 把字串轉換為整數

題目要求 將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。數值為0或者字串不是乙個合法的數值則返回0。這道題的難點在於溢位判斷,但令人遺憾的是溢位的算例似乎取消了,不進行溢位判斷依然能通過除錯。本文的解決方案未進行溢位判斷。這道題比較簡單,先看第乙個元素是正負號還是數字,確定標誌位。然後...

劍指Offer (字串)把字串轉換成整數

題目鏈結 題目描述 將乙個字串轉換成乙個整數 實現integer.valueof string 的功能,但是string不符合數字要求時返回0 要求不能使用字串轉換整數的庫函式。數值為0或者字串不是乙個合法的數值則返回0。輸入描述 輸入乙個字串,包括數字字母符號,可以為空 輸出描述 如果是合法的數值...