创建我自己的String类/子串方法

时间:2016-04-21 11:24:08

标签: java string substring

我正在进行一项练习,包括创建我自己的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);

    }

程序返回 ch10.MyString2@2a139a55 ,有人可以告诉我我的程序有什么问题吗?

1 个答案:

答案 0 :(得分:8)

目前,您正在打印对象而不是它的内容。您可以覆盖toString()类中的MyString2来更改此行为:

@Override
public String toString() {
    return s;
}