我最近了解了Setters和Getters。我可以使用它们,但问题是我必须在循环中使用它们。我正在使用的一些代码如下所述。
我在循环中输入学生信息,然后使用Set Get方法在另一个循环中编辑它。我可以在没有循环的情况下使用setter和getter方法,但我不确定如何在循环中使用它们。所以请指导我在stu数组中添加学生。
public static void Addstudents()
{
for(int i=0; i<stu.length; i++)
{
stu[i]=new Stuinfo();
System.out.println("Enter name ");
name= sc.next();
System.out.println("Enter id ");
id= sc.next();
}
}
要编辑数据,我想运行循环并使用setter方法设置值。像这样:
public void Modify()
{
String Cid;
System.out.println("You r modifying account");
for (int i=0; i<stu.length;i++)
{
stu[i].setId(id)...// dont know what to do in loop hree
}
}
答案 0 :(得分:3)
问题不明确,我认为要修改单个学生的特定帐户,你需要这样的事情:
public void Modify() {
String Cid;
System.out.println("Enter your ID :");
Scanner sc = new Scanner(System.in);
int id = sc.nextInt();
for (int i=0; i<stu.length;i++)
{
if(id == stu[i].getId()) {
//Change your account details
System.out.println("Enter name ");
name= sc.next();
stu[i].setName(name);
}
}
}
在上面的示例中,您将获得一个id作为输入,然后您在数组中查找输入ID,如果找到一个,您将有机会让用户更改帐户的详细信息那个特定的用户......
在第一个示例中,您必须使用setter设置学生实例属性:
public static void Addstudents()
{
for(int i=0; i<stu.length; i++)
{
stu[i]=new Stuinfo();
System.out.println("Enter name ");
stu[i].setName( sc.next() );
System.out.println("Enter id ");
stu[i].setId( sc.next() );
}
}
答案 1 :(得分:0)
public void Modify() {
System.out.println("You r modifying account");
Scanner sc = new Scanner(System.in);
for (int i=0; i<stu.length;i++)
{
System.out.println("Enter id");
stu[i].setId(sc.nextInt());
System.out.println("Enter name ");
stu[i].setName(sc.nextLine());
}
}