java怎么把字符转换成数字???
怎么把字符转换成数字???看到一个例子是这样的:intsum1=0;Stringstr='6464154646';charc=str.charAt(3);sum1+=c-...
怎么把字符转换成数字???
看到一个例子是这样的:
int sum1=0;
String str = '6464154646';
char c =str.charAt(3);
sum1+=c-'0' //字符转换成数字累加
部分的代码
字符转化成数字那个-'0'表示什么意思 求解 谢谢 展开
看到一个例子是这样的:
int sum1=0;
String str = '6464154646';
char c =str.charAt(3);
sum1+=c-'0' //字符转换成数字累加
部分的代码
字符转化成数字那个-'0'表示什么意思 求解 谢谢 展开
展开全部
这样解释吧
char里面存的是字符的ascii码
char c='0';
int ic=c;
System.out.println(ic);//输出的结果为48
所以你例子中sum1+=c-'0' 相当于转换成了ascii码进行的数字运算了,于是就求出了数字
附一下ASCII码表,相信你一看就明白了
http://baike.baidu.com/link?url=6Tn9IPIdONzrb4yXujBHo2Q6fmUrwjxv0J28xzuqqCdzTVXM0t2_e3rhkoVDKA3z
展开全部
下面这个方法可以转换,前提是你的字符内容是数字类型。比如 String str = "123" 或者 char str = '2'
char a = '1';
String b = String.valueOf(a);
int c = Integer.parseInt(b);
上面你说的 c - '0' 这一步应该就是转换格式的 ,我知道类似的在 js 中把一个变量转换成字符串 可以用 var str = str+""; 加两个引号就相当于格式转换了。
char a = '1';
String b = String.valueOf(a);
int c = Integer.parseInt(b);
上面你说的 c - '0' 这一步应该就是转换格式的 ,我知道类似的在 js 中把一个变量转换成字符串 可以用 var str = str+""; 加两个引号就相当于格式转换了。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
意思就是让字符形式的数字和字符形式的'0‘相减,因为字符形式的'0'~'9'也是按顺序排列的,即'0'下一个是'1',再下一个是'2',以此类推,所以用'1'-'0'就等于1(实际是两个字符之间距离为1,但恰好就等于你需要的数字了),'6'-’0‘=6,等等等等。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sum1 += c-'0' --> sum1 = sum1+(c - '0')
其中 c-'0' 目的是 让 这个 c 变成 int 类型, 然后 在和 sum1相加
结果 输出时 4
为什么是4 ???
首先 char c =str.charAt(3) ----> 可得出 字符 char c = '4'
然后 c-'0' 就转变为 int 类型的 的 4
然后 sum1 = sum1+4 ----> 0+4 =4
小错误 :String str = '6464154646'; 这里 应该是 String str = "6464154646" ;
望采纳
其中 c-'0' 目的是 让 这个 c 变成 int 类型, 然后 在和 sum1相加
结果 输出时 4
为什么是4 ???
首先 char c =str.charAt(3) ----> 可得出 字符 char c = '4'
然后 c-'0' 就转变为 int 类型的 的 4
然后 sum1 = sum1+4 ----> 0+4 =4
小错误 :String str = '6464154646'; 这里 应该是 String str = "6464154646" ;
望采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
数字 与 字符转为ascii码的数字 对应的值是不一样的,例如 '0' = 48 '3' = (48+3),c是char类型的,这你该明白为什么要用 c-'0' 了吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询