我有两个不同的数组
String[] student_name = {"Joe", "bryan", "moe", "zoe"};
String[] favColour = {"Blue", "Black", "White"};
我如何为学生分配颜色,如果我引用学生,我也能够获得他们最喜欢的颜色的详细信息?
例如,如果我想通过用户输入更改学生最喜欢的颜色
我知道我可以打印 favColour
和 student_name
student_name[0]
和 favColour[0]
输出 Joe Blue
但我将来不会再提及 Joe Blue,因为 Joe 和 Blue 变量尚未连接
编辑我已经有一个for循环,现在我可以在其中输入学生数量和姓名
String student_name[] = new String[totalstudents];
for(int i = 0; i < student_name.length;i++)
{
System.out.println("Enter Student Names: "+i);
student_name[i] = in.nextLine();
}
我如何为每个学生分配颜色,甚至为所有学生设置默认颜色? 谢谢
最佳答案
一种方法是使用从用户名映射到颜色的映射。
Map<String, String> studentFavouriteColor = new HashMap<>();
studentFavouriteColor.put("Joe", "Blue");
studentFavouriteColor.put("Zoe", "Red");
然后以学生为key就可以得到学生最喜欢的颜色。
String joesFavouriteColor = studentFavouriteColor.get("Joe"); // Gives "Blue".
<小时/>
更好的面向对象的方法是为概念学生创建一个类,并将最喜欢的颜色作为字段。
public class Student {
public String name;
public String favouriteColor;
public Student(String name) {
this.name = name;
};
}
然后您可以设置并获取学生对象最喜欢的颜色。
Student joe = new Student("Joe");
joe.favouriteColor = "Blue";
Student zoe = new Student("Zoe");
zoe.favouriteColor = "Red";
String joesFavouriteColor = joe.favouriteColor; // Gives "Blue".
关于java - 引用第二个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60845004/