0
我正在進行一項練習,其中包括創建我自己的String類實現,以及此類中存在的一些方法。我在創建一個返回子字符串的工作方法時遇到了一些麻煩。到目前爲止,我的課程實施如下所示:創建我自己的字符串類/子字符串方法
public class MyString2 {
private String s;
public MyString2(String s) {
this.s = s;
}
public MyString2 substring(int begin) {
String substring = "";
for (int i = begin; i < s.length(); i++) {
substring += s.charAt(i);
}
return new MyString2(substring);
}
}
該方法背後的想法非常簡單;
創建一個空白子字符串,然後從輸入字符串中從選定索引開始,對每個字符進行連接。下面是測試類的主要方法:
public static void main(String[] args) {
MyString2 s1 = new MyString2("string");
MyString2 substring = s1.substring(3);
System.out.println(substring);
}
程序返回[email protected],誰能告訴我什麼是錯我的程序?
非常感謝,這工作就像一個魅力!我應該自己想過這個,但在練習描述中,toString()方法不在該類應包含的方法列表中。 – Esben86
這可能是因爲它不是您自己實現的方法,而是,Java中的每個對象都是https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html的子類。包含'toString()','hashCode()'和'equals()'等方法,您可以使用自己的實現來覆蓋所有這些方法。 – nbokmans