給定乙個字串s,如果字串符合日常書寫的整數形式,並且屬於32位整數的範圍,返回str所代表的整數值,否則返回0.
比如:s="123",則返回123.
s="0123",則返回0.
s="-123",則返回-123.
s="-0",返回0.
s="-",返回0.
s="123a4",返回0.
首先,需要判斷字串中是否有非法字元,具體**如下:
public static boolean isvalid(string s)
//第乙個是負號,但是整個字串的長度只有1,或者負號後面跟個0的情況
if(s.charat(0)=='-'&&(s.length()==1||s.charat(1)=='0'))
//以0開頭,而且整個字串的長度大約0
if(s.charat(0)=='0'&&s.length()>1)
//從第二個開始依次遍歷字串,一旦出現不是數字的情況立即返回
for(int i=1;iif(s.charat(i)<'0'||s.charat(i)>'9')
}return true;}
接下來進行字元轉數字操作,具體**如下:
public static int fun(string s)
num=num*(-1);//最後計算完成後變成負數
}else
}return num/10;//最後一次要除以10}
最後測試輸出:
public static void main(string args)
將整數字串轉成整數值
題目 給定乙個字串str,如果str符合日常書寫的整數形式,並且屬於32位整數的範圍,返回所代表的整數值,否則返回0。eg str 123 返回123.str 023 因為 023 不符合日常的書寫習慣,所以返回0.str a23 返回0 str 0 返回0 str 2147483647 返回214...
將整數字串轉成整數值
題目 給定乙個字串str,如果str符合日常書寫的整數形式,並且屬於32位整數的範圍,返回所代表的整數值,否則返回0。eg str 123 返回123.str 023 因為 023 不符合日常的書寫習慣,所以返回0.str a23 返回0 str 0 返回0 str 2147483647 返回214...
將整數字串轉成整數值
題目 給定乙個字串str,如果str符合日常書寫的整數形式,並且屬於32位整數的範圍,返回str代表的整數值,否則返回0。舉例 str 123 返回123。str 023 不符合日常書寫習慣,返回0。str a13 返回0。str 2147473648 因為溢位,返回0.public class s...