Java 使用charAt(i) 报错

/**这个程序可以输出你所输入字符串的每个字符///方法类classtest_1{Stringzifu;//定义变量/**构造方法*/test_1(Stringx){zi... /** 这个程序可以输出你所输入字符串的每个字符
/

//方法类
class test_1 {
String zifu; //定义变量
/ ** 构造方法
*/
test_1(String x) {
zifu = x;
}
/** 定义方法
*/
void pailie() {
for(int i=0;i<=zifu.length();i++) {
char temp = zifu.charAt(i);
System.out.println(temp);
}
}
}

//测试类
public class test_2 {
public static void main(String args[]) {
test_1 obj = new test_1(args[0]);
obj.pailie();
}
}
展开
 我来答
宇帅007
2009-06-23 · TA获得超过1030个赞
知道小有建树答主
回答量:185
采纳率:0%
帮助的人:241万
展开全部
字符串的字符个数是用zifu.length()获得,但是字符串的索引是从0开始的,应该到zifu.length()-1结束,所以那个for循环应该改为for(int i=0;i<zifu.length();i++);就OK了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友533e2971e
2009-06-23 · TA获得超过199个赞
知道小有建树答主
回答量:82
采纳率:0%
帮助的人:74.8万
展开全部
一个字符串的遍历范围为【0~length()-1】,所以你的pailie中的for循环应该写为:

for(int i = 0; i < zifu.length(); i++){
......
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yzjszl256
2009-06-23 · TA获得超过201个赞
知道小有建树答主
回答量:223
采纳率:0%
帮助的人:160万
展开全部
数组越界了
for(int i=0;i<=zifu.length();i++) {
把结束条件里的 = 去掉
for(int i=0;i<zifu.length();i++) {
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式