关于java中 Integer.parseint()的用法
intin=Integer.parseInt(str.charAt(index+3));这样用为什么不正确?想实现这样的功能应该怎么弄或者怎样修改...
int in=Integer.parseInt(str.charAt(index+3)); 这样用为什么不正确? 想实现这样的功能应该怎么弄 或者 怎样修改
展开
3个回答
展开全部
这个方法的正确形式是 Integer.parseInt(String str)
str.charAt()方法返回的类型是 char 所以会出错。
char 和 int 之间可以直接 casting
int in = (int) str.charAt(index+3);
str.charAt()方法返回的类型是 char 所以会出错。
char 和 int 之间可以直接 casting
int in = (int) str.charAt(index+3);
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Integer.parseInt()不接受char类型的参数,只能传递String类型进去
所以需要用String.valueOf(str.charAt())或者str.charAt()+""来转换成String类型
所以要写成int in=Integer.parseInt(String.valueOf(str.charAt(index+3)));
当然这个办法很耗时,更简单一点的办法是用java.lang.Character.digit(char ch, int radix)方法
int in=Character.digit(str.charAt(index+3),10);
所以需要用String.valueOf(str.charAt())或者str.charAt()+""来转换成String类型
所以要写成int in=Integer.parseInt(String.valueOf(str.charAt(index+3)));
当然这个办法很耗时,更简单一点的办法是用java.lang.Character.digit(char ch, int radix)方法
int in=Character.digit(str.charAt(index+3),10);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int in=Integer.parseInt(str.charAt(index+3)+"");
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询