A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© java--周群 中级黑马   /  2014-1-19 11:24  /  1849 人查看  /  14 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

for(int start = 0,int end = str1.length()-1;start<=end;start++)
          {
                  System.out.println(chs[start]);
          }


为何会报错?

String08.java:71: 错误: 需要<标识符>
      for(int start = 0,int end = str1.length()-1;start<=end;start++)
                        ^
String08.java:71: 错误: 不是语句
      for(int start = 0,int end = str1.length()-1;start<=end;start++)
                                                       ^
String08.java:71: 错误: 需要')'
      for(int start = 0,int end = str1.length()-1;start<=end;start++)
                                                            ^
String08.java:71: 错误: 需要';'
      for(int start = 0,int end = str1.length()-1;start<=end;start++)
                                                                    ^
4 个错误

评分

参与人数 1技术分 +1 收起 理由
黄晓鑫 + 1

查看全部评分

14 个回复

正序浏览
int start = 0,这是一个完整的语句,要么用分号隔开,要么后面不要int
回复 使用道具 举报
三十而立 发表于 2014-1-20 09:10
int start = 0, int end = str1.length()-1;
1. 问题主要出在end的定义那里
int int end = str1.length()- ...

嗯嗯  这个语法规范记住了
回复 使用道具 举报
本帖最后由 三十而立 于 2014-1-20 09:16 编辑

int start = 0, int end = str1.length()-1;
1. 问题主要出在end的定义那里
int int end = str1.length()-1;
该语句,java虚拟机在编译时,把int end作为变量名来处理,而java语法中规定不可以使用关键字来定义标示符。
所以发生错误,
2. 解决办法
解决办法非常简单,就是把end变量前的int关键字删除即可。

评分

参与人数 1技术分 +1 收起 理由
滔哥 + 1

查看全部评分

回复 使用道具 举报

是的,后来改了就发现了。
回复 使用道具 举报
多定义了一个int
回复 使用道具 举报
淡夜清风 发表于 2014-1-19 11:47
for(int start = 0, end = str1.length-1;start


for(int start = 0, end = str1.length()-1;start<=end;start++)
回复 使用道具 举报

为什么不需要呢?

str1是我定义的一个字符串,要字符串的长度,就是length().
回复 使用道具 举报
淡夜清风 发表于 2014-1-19 11:47
for(int start = 0, end = str1.length-1;start

str1是我定义的一个字符串,要字符串的长度,就是length().
回复 使用道具 举报
省略了上面的,str1是定义的一个字符串,chs是把str1的字符串变成了字符数组,

评分

参与人数 1技术分 +1 收起 理由
滔哥 + 1

查看全部评分

回复 使用道具 举报
有定义str1数组?
我怎么看着你是用chs数组?
chs.length()-1

评分

参与人数 1技术分 +1 收起 理由
滔哥 + 1

查看全部评分

回复 使用道具 举报
可能是for循环不可以这么定义
回复 使用道具 举报
我是没看出来。
回复 使用道具 举报
for(int start = 0, end = str1.length-1;start<=end;start++)

评分

参与人数 1技术分 +1 收起 理由
黄晓鑫 + 1

查看全部评分

回复 使用道具 举报
length后没有()
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马