首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >StringBuilder构造函数接受StringBuilder对象-为什么?

StringBuilder构造函数接受StringBuilder对象-为什么?
EN

Stack Overflow用户
提问于 2016-08-14 23:53:36
回答 2查看 769关注 0票数 10

StringBuilder类定义了四个构造函数,它们都不接受StringBuilder,但会编译以下代码:

代码语言:javascript
复制
StringBuilder sb = new StringBuilder(new StringBuilder("Hello"));

这是否意味着匿名StringBuilder对象会在内部由编译器以某种方式转换为字符串?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-08-14 23:59:15

StringBuilder是一个CharSequence (它实现该接口)和there is a constructor taking a CharSequence。这就是为什么要编译给定的代码:

代码语言:javascript
复制
StringBuilder sb = new StringBuilder(new StringBuilder("Hello"));

此构造函数所做的工作只是使用给定CharSequence的内容初始化新的StringBuilder。其结果将与使用

代码语言:javascript
复制
StringBuilder sb = new StringBuilder("Hello");
票数 9
EN

Stack Overflow用户

发布于 2016-08-14 23:59:56

有一个接受CharSequence的构造函数,它是一个由StringBuilder和String (以及其他类)实现的接口。

http://docs.oracle.com/javase/8/docs/api/java/lang/CharSequence.html

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38943914

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档