2016-02-13 5 views
1
public Student(String name, String sch, int stay, String year) 
{ 
    String name1 = getInput("Enter your name:"); 
    this.name = name1; 
    String sch1 = getInput("Enter your scholarship:"); 
    this.sch = sch1;  
    String number = getInput("Enter years of stay: "); 
    this.stay = Integer.parseInt(number); 

    for (int i=0; i < programList.size(); i++) 
    { 
     if (stay==1) 
     { 
     //If the student's year of stay is only 1 year I will put he/she to the "freshmenList". How will I do that? 
     } 

    } 

Вот мой код. Я хочу отсортировать введенные элементы в новом ArrayList в соответствии с данными о времени пребывания. (Если год пребывания = 1, то первокурсники arraylist, if = 2, затем второкурсник arraylist, и так далее). Как я это сделаю? Спасибо!Как разбить Arraylist на более мелкие списки?

+0

'freshmenList.add (это) ; 'И я уверен, что вы не хотите иметь этот цикл' for' в конструкторе 'Student'. – Tom

+0

Итак, я проигнорирую цикл for здесь, тогда это будет только: if (stay == 1) freshmenList.add (this.name)? – James

+0

Если вы хотите только имя, то да. – Tom

ответ

0

Я рекомендую вам бы использовать switch для этого, они немного лучше читаемым (IMO) и должны быть быстрее, чем куча if заявлений:

switch (stay) 
{ 
    case 1: 
     freshmenList.add(this); 
     break; 

    case 2: 
     sophomoreList.add(this); 
     break; 

    ... 
    default: 
     //Do something with invalid answers 
} 
+1

А я знал, что что-то забыл, спасибо :) –

Смежные вопросы