如何使用另一个类将对象添加到arraylist?

基本上我的教授告诉我使用arraylist?老实说,我不明白他的意思..我认为他希望我将对象添加到arraylist?现在,我真的不知道该怎么做..

我的代码正在运行并且非常好。但是,他还是想让我利用arraylist让它看起来更好?

/* * 要更改此许可证头,请在项目属性中选择许可证头。* 要更改此模板文件,请选择工具 | 模板 * 并在编辑器中打开模板。*/ 包 ahaprogram2;

这是另一堂课


     package ahaprogram2;


     import java.util.ArrayList;

     import java.util.Scanner;


  public class Container {

 Scanner reader  = new Scanner(System.in);

 public ArrayList<String> CanContainer = new ArrayList<String>();

 public int Contsizep;

 public String contName;

 public String changeName;




 public Container(String contname){

     this.contName = contname;


 }


 public void AddCan(String CantoAdd) {

     this.CanContainer.add(CantoAdd);

 }


 public void RemoveCan(String CantoRemove) {

      if (this.CanContainer.contains(CantoRemove)) {


        this.CanContainer.remove(CantoRemove);  

          System.out.println("** " + CantoRemove + " Can removed 

     successfully**");

     }

      else {

          System.out.println("Can cannot be found.. make sure to put the 

      exact name!!");

      } 


       }


    public void renameCont(String changename) {

    this.contName += changename;

    }


     public void printContents() {

     System.out.println("Here are the contents of " + contName);

     System.out.println("");

     for(String counter : this.CanContainer){


        System.out.println(counter); }



       }


      public void printContainer() {  // for OPTION A ONLY

     System.out.println("CONTAINER NAME SUCCESSFUL: ** " + contName + 

   "**");

   }

   }

我只是想把所有东西都放在一个数组列表中,请帮忙..我的教授没有面对面地教我们,这就是为什么我真的尽我所能在 youtube 上观看视频并在这里问..


斯蒂芬大帝
浏览 203回答 2
2回答

精慕HU

您的许多代码似乎都基于Container以相似(如果不相同)的方式交互五个对象之一。首先,您可以使用 ArrayList 来存储 Container 对象的列表,而不是手动声明每个容器:public static ArrayList<Container> containerList = new ArrayList<Container>();然后,您可以使用新容器填充此列表ArrayList.add(E e),并结合 for 循环或其他一些构造:for (int i = 1; i <= 5; i++) {&nbsp; Container container = new Container("Container " + i + ": ");&nbsp; containerList.add(container);}同样,您可以使用ArrayList.get(int index)(如果您知道索引)或ArrayList.indexOf(Object o)(如果您有对特定容器的引用)访问任何特定容器。这可以替换或补充您的条件语句。例如,您的(contInput.equals("X"))语句列表可以替换为:int index = Integer.parseInt(contInput);System.out.print("Input the name of Container " + index + ": ");Container container = containerList.get(index - 1); // arrays start at 0, but your numbering starts at 1String contImp = reader.nextLine();container.renameCont(contImp);container.printContainer();希望这可以帮助。

哈士奇WWW

您可以像这样将容器添加到 ArrayList:ArrayList<Container> containers = new ArrayList<>();containers.add(new Container("Container 1: "));containers.add(new Container("Container 2: "));containers.add(new Container("Container 3: "));然后像这样得到它们:Container firstContainer = containers.get(0);Container secondContainer = containers.get(1);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java