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

2021-10-07 16:36:27 字數 752 閱讀 9590

題目描述

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

輸入描述:

輸入乙個字串,包括數字字母符號,可以為空

輸出描述:

如果是合法的數值表達則返回該數字,否則返回0

解析:本題判斷是否能夠轉換成整數很簡單,但是還要判斷是否越界;int:-2147483648~2147483647

**:public class solution

char chars = str.trim().tochararray();

int flag = 1;

int res = 0;

int i = 0;

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

if(chars[i] == '+' || chars[i] == '-')

while(i < chars.length)

if(flag == -1 && (res > integer.max_value/10

|| res == integer.max_value/10 && cur > 8))

res = res * 10 + cur;

i++;

}else

}return res*flag;

}public static boolean isnum( char c)

}

劍指offer JZ49把字串轉換成整數

將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。數值為0或者字串不是乙個合法的數值則返回0 輸入乙個字串,包括數字字母符號,可以為空如果是合法的數值表達則返回該數字,否則返回0示例1 2147483647 1a332147483647 0 首先我們應該先判斷第一位,如果第一位是 號則標記...

49 劍指offer 把字串轉換成整數

題目描述 將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。數值為0或者字串不是乙個合法的數值則返回0 輸入描述 輸入乙個字串,包括數字字母符號,可以為空 輸出描述 如果是合法的數值表達則返回該數字,否則返回0 輸入例子 2147483647 1a33 輸出例子 2147483647 0 ...

劍指offer 49 把字串轉換成整數

題目 將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。數值為0或者字串不是乙個合法的數值則返回0 輸入描述 輸入乙個字串,包括數字字母符號,可以為空 思路 如果有正負號,先處理正負號,再處理判斷是否為合法字元,思路看不懂可以看 附有注釋,請原諒博主我太懶 class solution e...