黑马程序员技术交流社区

标题: StringBuilder的问题! [打印本页]

作者: 高庆亮    时间: 2011-11-17 19:50
标题: StringBuilder的问题!

public class Test {

       
        public static void main(String[] args) {
           Class clazzProxy1 = Proxy.getProxyClass(Collection.class.getClassLoader(), Collection.class);
                System.out.println(clazzProxy1.getName());
               
                Constructor[] constructors = clazzProxy1.getConstructors();
                for(Constructor constructor:constructors){
                        String name = constructor.getName();
                        StringBuilder sBuilder =  new StringBuilder(name);                        sBuilder.append("(");
                        Class[] clazzParams = constructor.getParameterTypes();
                        for(Class clazzParam:clazzParams)
                        {
                                sBuilder.append(clazzParam.getName()).append(',');
                        }
                        sBuilder.append(")");
                }
               
        }

}
上面红色字体在StringBuilder()里的name是什么意思啊?为什么要把name传进去呢?我没明白!
作者: 咪咪    时间: 2011-11-17 23:27
stringbuilder有带字符串参数的构造函数,stringbuilder是一个可变的字符序列,既然带参数说明在创建这个字符序列时初始化这个序列的内容就为传进来的name值。
作者: 梁锡伟    时间: 2011-11-18 00:38
  StringBuilder sBuilder =  new StringBuilder(name);

  StringBuilder sBuilder =  new StringBuilder();
aBuilder.append(name);
效果一样
作者: 高庆亮    时间: 2011-11-18 10:56
梁锡伟 发表于 2011-11-18 00:38
StringBuilder sBuilder =  new StringBuilder(name);

  StringBuilder sBuilder =  new StringBuilder( ...

这么说我好像懂了!
作者: laoyang    时间: 2011-11-18 14:10
这个的意思就是在初始化sBuilder的时候就将把name的值赋给它
作者: moonlight    时间: 2011-11-18 15:21
name其实就是上一行的内容,那么代表constructor.getName();,就是让其内容添加到里面去。





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2