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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© huhanghao 中级黑马   /  2015-3-18 23:59  /  1077 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class Demo1234
{
        public static void main(String[] args)
        {
                String s1 = "  abc abc  ";
                String s2 = "abcdefgh";
                String s = "";
                String ss = "";

                s = Converse(s2);
                ss = Converse(s2,1,5);
                sop(s);
        }

        public static void sop(Object obj)
        {
                System.out.println(obj);
        }

        public static String Converse(String str)
        {
                char[] chs = str.toCharArray();
                char[] chs1 = new char[chs.length];

                for (int i = 0,j = chs.length - 1; i < chs.length ;i++,j-- )
                {
                        chs1[i] = chs[j];
                }

                String s = new String(chs1);
                return s;
        }

        public static String Converse(String str, int start ,int end)
        {
                char[] chs = str.toCharArray();
                char[] chs1 = new char[chs.length];
               
                int len = 0;
                for (int i = start,j = end; i < end ;i++,j-- )
                {
                        chs1[len] = chs[j];
                        len++;
                }

                String s1 = new String(chs1);
                String s2 = substring(0,start);
                String s3 = substring(end-1,chs.length);
                String s = s1+s2+s3;
                return s;
        }

}

编译错误,找不到原因

3 个回复

倒序浏览
虽然还没有弄明白你第二个Converse方法是什么怎么执行的?但是编译没通过就是你那里面的substring用法有误,应该是str.substring();,这样才对,你必须明确返回的是哪个字符串的子串;第一个Converse没错

点评

这里的两个converse用的是重构,来解决两种情况的反转。一种是反转整个字符串,一种是反转部分  发表于 2015-3-19 15:18
回复 使用道具 举报
那第二个converse的方法,有两种实现方式:1、先将整个字符串反转,然后再获取需要的部分字符串;2、先获取指定的部分字符串,然后再反转;你的第二个converse应该是先转换成字符串数组,在反转部分字符数组元素,个人感觉有点麻烦,还不如整个转成数组后,整个反转字符串数组,然后再根据传入值获取指定的反转字符串,而且这样的话,你就可以直接调用第一个converse,再写上获取部分的代码就可以了,个人感觉这样更好点
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马