2016-02-16 2 views
0

, поэтому у меня возникают проблемы с этой работой для меня. что этот код должен сделать, это иметь 3 разных (строковых) поля, которые затем сортируют их в алфавитном порядке, у меня была помощь раньше, но он не будет работать на моем netbeans. В настоящее время я обновляюсь со всеми обновлениями.arraylist в java для сортировки данных

Heres код я до сих пор

import java.util.Scanner; 
import java.util.List; 
import java.util.ArrayList; 
import java.util.Comparator; 

public class test { 
private Scanner scan = new Scanner(System.in); 
private List<LayoutOfScientist> scientistsNames = new ArrayList<LayoutOfScientist>(); 
private String name, field, idea; 
private boolean continueLoop = true; 
private int countTo3 = 0; 

private void run() { 
    while(countTo3<3&&continueLoop) { 
     if(countTo3>0) { 
      System.out.println("Would you like to add another scientist? (Y/N)"); 
     } 

     if(countTo3 == 0 || scan.nextLine().equalsIgnoreCase("y")) { 
      System.out.println("Please enter the scientist's name:"); 
      name = scan.nextLine(); 
      System.out.println("Please enter the scientist's field:"); 
      field = scan.nextLine(); 
      System.out.println("Please enter the scientist's idea:"); 
      idea = scan.nextLine(); 
      scientistsNames.add(new LayoutOfScientist(name, field, idea)); 
     } else { 
      continueLoop = false; 
     } 
     countTo3++; 
    } 

    scientistsNames.sort(Comparator.comparing(LayoutOfScientist::getScientistName)); 
    for(LayoutOfScientist lOS : scientistsNames) { 
     System.out.println(lOS.getScientistName() + ", " + lOS.getScientistField() + ", " + lOS.getScientistIdea()); 
    } 
} 

private class LayoutOfScientist { 
    private String scientistName, scientistField, scientistIdea; 

    private LayoutOfScientist(String scientistName, String scientistField, String scientistIdea) { 
     this.scientistName = scientistName; 
     this.scientistField = scientistField; 
     this.scientistIdea = scientistIdea; 
    } 

    public String getScientistName() { 
     return scientistName; 
    } 

    public String getScientistField() { 
     return scientistField; 
    } 

    public String getScientistIdea() { 
     return scientistIdea; 
    } 
} 

public static void main(String[] args) { 
    new Test().run(); 
} 
} 
+3

В чем проблема? Исключения помогают получить ответы. –

ответ

1

Ваше имя класса test (в нижнем регистре т) и в основной метод, вы вызываете Test().run(). Вам нужно переименовать свой класс в Test, и это должно сработать. Или, если ваш файл является тестом, вам необходимо изменить Test().run() на номер test().run() вместо public class test по номеру public class test. Тем не менее, это хорошая практика программирования, чтобы назвать ClassLikeThis.

Если ваша ошибка совсем другая, сообщите нам, что такое ошибка.

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