Java中循环的Setter Getter方法

时间:2012-11-04 09:32:02

标签: java

我最近了解了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 
    }
  }

2 个答案:

答案 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());
    }
}