我有问题在我的程序员类中返回一个字符串因为我无法将其转换为MyString(我的自定义对象)类型...如何修复它
MyString subString (int start)
{
String a="";
char [] newData=new char[data.length];
for(int c=0;c<newData.length;c++)
{
newData[c]=data[c];
}
for(int c=start;c<newData.length;c++)
{
a+=newData[c];
System.out.println(a);
}
MyString tempot=new MyString(a);
return data ;
}
答案 0 :(得分:0)
您想要返回tempot
,因为这是您方法的返回类型
您的方法签名返回MyString
MyString subString (int start){
}
所以你应该返回一个MyString
对象
MyString tempot=new MyString(a);
return tempot;
编辑:
public class MyString {
String text;
public MyString(String text){
this.text = text;
}
public String subString (int start){
int thisStart = start;
char [] textArray = text.toCharArray();
int newCharSize = text.length - start;
char [] newData=new char[newCharSize];
for(int c=0;c<newData.length;c++){
newData[c]=textArray[thisStart];
thisStart++;
}
return newData.toString() ;
}
@Override
public String toString(){
return text;
}
}
以下是MyString
public class TestMyString {
public static void main(String[] args){
String text = "Hello World!"
MyString myString = new MyString(text);
String subString = myString.subString(3)
System.out.println(subString);
// Output: "o World!"
System.out.println(myString);
// output "Hello, World!"
}
}