StringBuilder类定义了四个构造函数,它们都不接受StringBuilder,但会编译以下代码:
StringBuilder sb = new StringBuilder(new StringBuilder("Hello"));这是否意味着匿名StringBuilder对象会在内部由编译器以某种方式转换为字符串?
发布于 2016-08-14 23:59:15
StringBuilder是一个CharSequence (它实现该接口)和there is a constructor taking a CharSequence。这就是为什么要编译给定的代码:
StringBuilder sb = new StringBuilder(new StringBuilder("Hello"));此构造函数所做的工作只是使用给定CharSequence的内容初始化新的StringBuilder。其结果将与使用
StringBuilder sb = new StringBuilder("Hello");发布于 2016-08-14 23:59:56
有一个接受CharSequence的构造函数,它是一个由StringBuilder和String (以及其他类)实现的接口。
http://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html
https://stackoverflow.com/questions/38943914
复制相似问题