我已经看过几次提到这个,我不清楚这是什么意思.你何时以及为何会这样做?
我知道接口有什么作用,但事实上我不清楚这一点让我觉得我错过了正确使用它们.
如果你这样做是这样的:
IInterface classRef = new ObjectWhatever()
Run Code Online (Sandbox Code Playgroud)
你可以使用任何实现的类IInterface吗?你什么时候需要这样做?我唯一能想到的是,如果你有一个方法,你不确定除了实现之外将传递什么对象IInterface.我想不出你需要多久做一次.
另外,你怎么能写一个接受实现接口的对象的方法?那可能吗?
我有一个String表示整数值,并希望将其转换为int.是否有一个常规的Java相当于Integer.parseInt(String)?
如何在Scala中用另一个字符串"连接"一个可迭代的字符串?
val thestrings = Array("a","b","c")
val joined = ???
println(joined)
Run Code Online (Sandbox Code Playgroud)
我想要输出这个代码a,b,c(通过","加入元素).
A String 是-a CharSequence.Java库中的许多方法都接受,CharSequence因此它们可以更普遍地运行.有些classe有一个String方法(例如Writer.write(String)),并且还Appendable使用等效CharSequence方法(例如Writer.append(CharSequence))实现.
如果我正在编写一个委托给这样一个类的类,并且需要一些文本输入,我可以选择输入为a String或a CharSequence.通过为客户提供更多选项,选择后者可以使课程更加灵活.但我没有看到太多的代码这样做:文本参数几乎总是一个String而不是一个CharSequence.是否有使用的缺点CharSequence?是否有性能受损?或者只是程序员的intertia或无知导致使用String而不是CharSequence?
相比
class XMLWriter {
private final Writer writer;
// more stuff here
public void writeComment(String text) {
writer.write("<!-- ");
writer.write(text);
writer.write(" -->");
}
}
Run Code Online (Sandbox Code Playgroud)
同
class XMLWriter {
private final Writer writer;
// more stuff here
public void writeComment(CharSequence text) {
writer.write("<!-- ");
writer.append(text);
writer.write(" -->"); …Run Code Online (Sandbox Code Playgroud)