【发布时间】:2013-10-25 22:41:14
【问题描述】:
我目前正在学习 Java,并被要求编写一个程序来处理 演员和电影作为班级。
演员类具有以下属性:Name, Address, age, myFilm(一个数组或数组列表,用于保存特定演员的所有电影
已经出演了。
电影类有这些属性:Name, Code(String, String)
我已经使用 getter 和 setter 方法实现了这些类来处理数据:
到目前为止我的演员班:
public class actor {
private String name;
private String address;
private int age;
int[] myFilms = new int[3];
public actor (String name, String address, int age) {
}
public void setName (String name) {
this.name = name;
}
public void setAddress (String address) {
this.address = address;
}
public void setAge (int age) {
this.age = age;
}
public void setFilm () {
}
public String getName () {
return name;
}
public String getAddress () {
return address;
}
}
我的电影课:
public class film {
private String name;
private String code;
//Constructor
public film () {
}
public void setName (String name) {
this.name = name;
}
public String getName (){
return name;
}
public String getCode (String name) {
//Get code:
//Split Function
String[] words = name.split("\\s+");
String code = "";
for (int i=0; i < words.length; i++) {
code = code + words[i].charAt(0);
code = code.toUpperCase();
}
return code;
}
}
对于如何使节目动态显示每个演员的总影片,我遇到了难题。这是针对大学分配的,我还需要在某个时候对数组进行深层复制。我对 OO 几乎完全陌生,所以这对我来说是一项棘手的任务。
任何建议或正确方向的观点将不胜感激。
【问题讨论】:
-
为什么演员
myFilms是int的数组?为什么不是film的数组? -
是的,电影数组 (Film[])。还有一个约定,每个类名必须以大写字母开头。
-
ArrayList<Film>会更好 -
我会使用 List
而不是数组来保存电影。或者至少是一个 ArrayList。这样,您将每个演员的最大电影数量限制为 3。 -
更正:是的 myFilm 数组应该是一个字符串。我遇到的麻烦是弄清楚如何让每个演员 myFilm 数组动态显示仅与他们相关的电影标题。
标签: java arrays oop object arraylist