劍指offer 把字串轉換成整數

2021-10-03 17:17:54 字數 682 閱讀 6891

題目:

將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。 數值為0或者字串不是乙個合法的數值則返回0

輸入

+2147483647

1a33

輸出2147483647

0

原始碼:

public class solution 

char chars = str.tochararray();

boolean tag = false; // 判斷第一位元素是否是正負號

if (chars[0] == '-')

long sum = 0; // 記錄總值

for (int i = 0; i < chars.length; i++)

if (chars[i] < '0' || chars[i] > '9')

sum = sum * 10 + (chars[i] - '0');

}if (tag && (-sum) < integer.min_value)

if (!tag && sum > integer.max_value)

return tag ? (int)(-sum) : (int)sum;

}}

劍指offer 把字串轉換成整數

字串轉成整數的核心 很簡單,但是需要考慮的各種情況很多。1 首位 的判斷。2 在 的溢位判斷。3 null 空字串的判斷。4 數字後面出現了很多非數字的情況。atoi函式是講前面的數字儲存下來,劍指offer 的 則是返回0。兩種情況都說的通,視情況而定吧。5 開頭出現了很多非數字,中間摻雜著數字的...

《劍指offer》 把字串轉換成整數

題目描述 將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。這種題目交代不清楚,也沒啥技巧含量和思考價值,既然出現了,就順帶著做一下吧。code t 把字串轉換成整數 題目描述 將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。date 2015.12.10 20 17 auth...

劍指offer 把字串轉換成整數

輸入描述 輸入乙個字串,包括數字字母符號,可以為空 輸出描述 如果是合法的數值表達則返回該數字,否則返回0 示例1 輸入 2147483647 1a33 輸出 2147483647 0class solution int g status valid int strtoint string str ...