我已经看到了他主题的所有其他问题,但我并没有真正从中得到很多。刚开始学习java所以请尽量为我解释。
如何添加我的Arraylist“Fish”呢?我甚至可以在同一个类中添加一些东西(第3行类问题)......但是我需要知道如何在不同的类中添加它。(我在类问题2的最后尝试过但它也没有用)
import java.util.ArrayList;
public class question {
private String name;
public ArrayList<String> Fish = new ArrayList<>();
Fish.add(name); // <--- this for some reason doesnt work the point is red underlined as well as the ")"
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public ArrayList<String> getFish() {
return Fish;
}
}
第二课
public class question2 {
public String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
// First try : question.getFish().add(nam1);
// Second try question.Fish.add(name1);
//how do I add the name1 into my ArrayList "Fish".How can I transport my ArrayList from question1 to question2?
}
任何帮助将不胜感激,谢谢。
答案 0 :(得分:0)
通过一些研究我发现了这个: http://www.guj.com.br/t/chamar-instancia-em-outra-classe/349765/6
检查awnser并通过调试运行代码,这样你就可以逐步看到正确或错误的内容。
希望它可以帮助你,如果不是,以后我可以为你做一个例子。
PS:如果您的第一个类只有一个构造函数,那么您不需要在那里创建数组,您可以在第二个类上调用构造函数并在那里创建数组。
答案 1 :(得分:0)
Fish.add(名称);
这里没有任何意义。这样的陈述必须在方法内。要访问字段“Fish”(顺便说一句:请遵守严格建议字段以小写字母开头的Java命名约定),首先需要一个“问题”的实例(这里再次:类以大写字母开头)信)。
这个名字是什么?它是您的ArrayList的兄弟。私人字符串名称;
要向您的ArrayList添加鱼,我会使用以下内容:
public void addFish(String name) {
Fish.add(name);
}
将该方法放入问题类。
关于你的第二课:如果他们在一个方法中并且你在问题2中有一个问题实例,那么两个尝试都会有效。我没有在这里看到问题2类的使用 - 但在问题2中添加鱼的一种可能性是:
public void addFish(question q, String name) {
q.getFish().add(name);
}
我建议你通过一些不错的java教程。看来你对OOP缺乏一些基本的了解。我会从这里开始:https://docs.oracle.com/javase/tutorial/java/concepts/object.html https://docs.oracle.com/javase/tutorial/java/concepts/class.html
答案 2 :(得分:0)
您可能期望这样,我刚刚更新了您的源代码
只需复制粘贴,它应该可以工作:
import java.util.ArrayList;
class Question {
private String name;
public ArrayList<String> fish;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public ArrayList<String> getFish() {
return fish;
}
public void setFish(ArrayList<String> fish) {
this.fish = fish;
}
public void addToFish(String name) {
if(this.fish == null){
this.fish = new ArrayList<>();
}
this.fish.add(name);
}
}
&#13;
public class Question2 {
private String name;
Question question = new Question();
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public static void main(String[] args) {
Question question = new Question();
question.addToFish("question1");
question.addToFish("question2");
question.addToFish("question3");
question.addToFish("question4");
for(String fish : question.getFish()){
System.out.println(fish);
}
}
}
&#13;