|
<div class="cnblogs_code">
.valueOf(示例1
输入
+2147483647<span style="color: #000000">
1a33
输出
2147483647
0<span style="color: #000000">
思路:
1.<span style="color: #000000">处理负号
2.<span style="color: #000000">处理正号
3.<span style="color: #000000">字符串中包含非数字字符的直接返回0
4.'0'<span style="color: #000000">字符的ascii码是48
4.遍历字符串,从0位置开始扫描,当前数字字符ascii码减去'0'<span style="color: #000000">字符ascii码,就应该是当前位置的整型
StrToInt(str)
<span style="color: #0000ff">if <span style="color: #0000ff">empty(str) <span style="color: #0000ff">return 0<span style="color: #000000">
symbol=1
<span style="color: #0000ff">if str[0]=='+'<span style="color: #000000">
symbol=1; str[0]='0'
<span style="color: #0000ff">if str[0]=='-'<span style="color: #000000">
symbol=-1; str[0]='0'<span style="color: #000000">
res=0
<span style="color: #0000ff">for i=0;i<str.size;i++
<span style="color: #0000ff">if(str[i]<'0' || str[i]>'9') <span style="color: #008000">//<span style="color: #008000">包含非数字字符的,直接返回0
res=0 <span style="color: #0000ff">break<span style="color: #000000">;
res=res10+str[i]-'0' <span style="color: #008000">//<span style="color: #008000">进位用和ascii相减算出整型数字
res=symbolres <span style="color: #008000">//<span style="color: #008000">加上正负号
<span style="color: #0000ff">return res
<div class="cnblogs_code">
StrToInt( (()){ 0=1 ({0}=='+'=1{0}='0' ([0]=='-'=-1{0}='0'=0 (=0;<();++({}<'0' || {}>'9'){
=0=*10+{}-'0';
=*;
="-123"=StrToInt((); (编辑:安卓应用网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|