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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 吴璞玉 黑马帝   /  2012-2-24 18:16  /  1811 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 吴璞玉 于 2012-2-25 11:21 编辑

public static void reverse(char[] arr)
{
        for(int start=0,end<arr.length-1; start<end;start++,end--)
        {
                swap(arr,start,end);
        }
}
public static void swap(char[] ch,int x,int y)
{
        char temp=ch[x];
        ch[x]=ch[y];
        ch[y]=temp;
}
这是将字符串变成字符数组后进行反转的方法,可是编译时for循环总是报错,肿么回事呢

评分

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

查看全部评分

5 个回复

倒序浏览
本帖最后由 马胜平 于 2012-2-24 18:43 编辑

for循环小括号里第一条是初始化语句,你那是初始化语句吗里面还有一个表达式;循环条件才是一个布尔表达式.
初始化!初始化!初始化就是给变量分配空间赋值。
回复 使用道具 举报
for(int start=0,end<arr.length-1; start<end;start++,end--)
改成 for(int start=0;end<arr.length-1,start<end;start++,end--)
回复 使用道具 举报
for(int start=0,end=arr.length-1; start<end;start++,end--)
这样写才对
回复 使用道具 举报
for(int start=0,end<arr.length-1; start<end;start++,end--)
这句话中end应该是等于arr.length-1,因为第一个分号是赋值的,这现在变成了判断了,我改成=号运行成功
回复 使用道具 举报
for(int start=0,end<arr.length-1; start<end;start++,end--)这句改成=号就可以,
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马