当前位置: 首页 > 知识库问答 >
问题:

如何从存储在ArrayList中的方法返回toString方法

邢小云
2023-03-14

谢谢

代码如下:

import java.util.ArrayList;

public class TestTextbooks {  

        public static void main(String[] args) {
            Textbook java101 = new ProgrammingTextbook("Java101","Dr Migoreng",1331,"Java");
            Textbook python201 = new ProgrammingTextbook("Python201","Dr Karl",112,"Python");
            Textbook fluidMechanics = new EngineeringTextbook("Fluids101","Dr Brisbane",122,"GIS","Fluid Mechanics");
            Textbook modelling101 = new EngineeringTextbook("Modelling101","Dr Suzuki",322,"WaterGems","Water Modelling");

      ArrayList books = new ArrayList();
      books.add(java101); 
      books.add(python201); 
      books.add(fluidMechanics);
      books.add(modelling101);

      System.out.println("" + books.toString());
            }    
    }
public class ProgrammingTextbook extends Textbook {
    private String language;
    private String title;
    private String author;
    private int pages;


    public ProgrammingTextbook (){
    }

        //overloaded constructor
    public ProgrammingTextbook (String title, String author,int pages,String language){
        this.title = title;
        this.author = author;
        this.pages = pages;
        this.language=language;
    }
    //set method for overloaded constructor
    public void setProgrammingTextBook (String title, String author,int pages,String language){
        setLanguage(language);
    }
     //individual set methods
    public void setLanguage(String language){
        this.language = language;
    }
    //individual get methods
    public String getLanguage(){
        return language;
    }  
    public String toString(String title, String author,int pages,String language){
        return title + "/" + author + "/" + pages + "/" + language;
    }

}
public class EngineeringTextbook extends Textbook {
    private String language;
    private String subject;
        //default constructor (probs shouldn't actually have values)
        public EngineeringTextbook (){
    }
    //overloaded constructor
    public EngineeringTextbook (String title, String author,int pages,String language,String subject){
        this.title = title;
        this.author = author;
        this.pages = pages;
        this.language=language;
        this.subject=subject;
    }
    //set method for overloaded constructor
    public void setEngineeringTextBook (String title, String author,int pages){
        setLanguage(language);
        setSubject(subject);
    }
        //individual set methods
    public void setLanguage(String language){
        this.language = language;
    }
    public void setSubject(String subject){
        this.subject = subject;
    }

    //inbdividual get methods
    public String getLanguage(){
        return language;
    }
    public String getSubject(){
        return subject;
    }

    //toString method
    public String toString(String title, String author,int pages,String language,String subject){
        return title + "/" + author + "/" + pages + "/" + language + "/" + subject;
    }
}
public abstract class Textbook {

    protected String title;
    protected String author;
    protected int pages;

    //default constructor (Don't really need to add null for all values but put in to show it is a default constructor
    public Textbook (){
        this.title = null;
        this.author = null;
        this.pages = 0;
    }
    //overloaded constructor
    public Textbook (String title, String author,int pages){
        this.title = title;
        this.author = author;
        this.pages = pages;
    }
    //individual set methods
    public void setTitle(String title){
        this.title = title;
    }
    public void setAuthor(String author){
        this.author = author;
    }
    public void setPages(int pages){
        this.pages = pages;
    }
    //individual get methods
    public String getTitle(){
        return title;
    }
    public String getAuthor(){
        return author;
    }
    public int getPages(){
        return pages;
    }
    //abstract toString method
    public String toString(String title, String author,int pages){
       return title + "/" + author + "/" + pages;
    }   
}

共有1个答案

麹渊
2023-03-14

object.ToString()不接受任何参数。当您未能正确重写方法时,请使用@override批注来捕获它。

@Override
public String toString() {
    return title + "/" + author + "/" + pages + "/" + language;
}

而且

@Override
public String toString() {
   return title + "/" + author + "/" + pages;
}   

等等。

 类似资料:
  • 问题内容: 我想将方法​​返回的数组存储到另一个数组中。我怎样才能做到这一点? 当我调用此方法时,如何将返回的数组(z)存储到另一个数组中? 问题答案: 上面的方法不返回数组本身,而是返回对该数组的引用。在调用函数中,您可以在另一个引用中收集此返回值,例如: 此后还将引用之前引用的同一数组。 如果这不是您想要的,并且要创建阵列的副本,则可以使用创建副本。

  • 问题内容: 我想为Java中的ArrayList拥有toString()方法的自己的实现。但是,即使我将这样的toString()添加到包含ArrayList的类中,我也无法正常工作。 当我这样调用ArrayList时,我仍然会获得默认表示形式。我想念什么吗? 问题答案: 你应该做类似的事情 并将列表作为参数传递给。您 可以从 技术上扩展(使用匿名类或具体类)并实现自己,但这在这里似乎是不必要的。

  • 问题内容: 我有一类这样的方法: 我如何在另一个类中调用此方法? 问题答案: 1. 如果要从中调用该方法的类位于同一包中,则创建该类的实例并调用该方法。 2. 使用 3. 最好有个赞等等。 例如:

  • 问题内容: 我正在使用凌空特技从REST api解析电影详细信息,并将解析后的数据保存在一个名为detailsMovies的对象的Arraylist中。但是我无法在onResponse方法之外访问ArrayList。我是Android新手,所以我不知道该怎么做。任何帮助表示赞赏! 这是代码: 问题答案: 在您的课程中定义一个接口并实现它。 因此,这里的简单技巧是与回调接口。

  • 方法来自另一个类。 如何执行或在映射中存储其他内容(而不是),以便从映射中的函数获取值?

  • *已解决:未清除ArrayList ebwteen调用,因此列表不断增加。我加了烫发。在nextPermutation()中的第二个for循环之前清除(),问题解决了!感谢所有帮助过我的人。 在toString方法中返回ArrayList时遇到问题。我的任务是从数字1-10中生成10个排列列表。驱动程序中调用了10次方法nextPermutation。 我希望我的输出如下所示: 等等.. 相反,每