Я кодирую в blueJ. Мои цели это: 1) Написать класс пользователейНевозможно импортировать мой собственный класс в другой класс
пользователь:
has a username e.g 'fj3'
has a userType which can be: 'user', 'editor' or 'admin'
has a name e.g 'Francis'
has a constructor which takes the username, userType and name as parameters
has a getUsername() method
has a getUserType() method
has a getName() method
has a setUserType() method which takes one of the user types as a parameter
2) Написать UserGroup класс
-The класс UserGroup должен иметь ArrayList пользователей.
Напишите конструктор для класса UserGroup. Он должен создать экземпляр ArrayList.
В UserGroup напишите метод под названием .addSampleData(), который создает 10 пользователей, и используя метод add() ArrayList, поместите 10 новых объектов User в ArrayList.
В UserGroup напишите метод getUser, который принимает int как параметр и возвращает пользователя в этом слоте ArrayList.
В UserGroup написать() в UserGroup printUsernames:
Использование расширенных для цикла (смотри выше), цикл через ArrayList и напечатать имя пользователя и UserType каждого пользователя в ArrayList.
То, что я до сих пор:
package user;
public class User{
public enum UserType{
ADMIN, EDITOR, USER;
}
private String id;
private UserType userPermissions;
private String actualName;
public User(String username, UserType userType, String name){
id = username;
userPermissions = userType;
actualName= name;
}
public String getUsername(){
return id;
}
public UserType getUserType(){
return userPermissions;
}
public String getName(){
return actualName;
}
public void setUserType(UserType input){
userPermissions = input;
}
}
И мой UserGroup класс:
package user;
import java.util.*;
import user.User.UserType;
public class UserGroup{
private ArrayList<User> people;
public UserGroup(){
people = new Arraylist<User>();
}
public static void addSampleData(String username, UserType userType, String name){
People.add(new User(username, userType,name));
}
public String getUser(int list){
return User;
}
public void printUsernames(){
for (User user: groupArray){
System.out.printf("%s %s\n", user.getUsername(), user.getuserType);
}
}
}
Это, очевидно, далеко не полный, но я полностью застрял. Моя первая проблема заключается в том, что «для (User user: groupArray)» дает мне ошибку незаконного начала типа. Пожалуйста, помогите мне с этим!! Я думаю, что мой пользовательский класс в порядке, но класс UserGroup нигде не достиг цели, и я не знаю, как это сделать!
Использование «пакета» в процессе импорта кажется подозрительным: 'импорт package.User.UserType;', как правило, это будет 'импорт User.UserType;' (хотя имена пакетов по конвенции обычно начинаются с строчными буквами). Действительно ли эти два класса содержатся в разных пакетах? Можете ли вы включить свои инструкции пакета с кодом? –
Обратите внимание, что я сменил тему вопроса на вопрос, который пытается отразить вашу фактическую проблему. Вам следовало бы сделать то же самое с вашим следующим вопросом. Ваш предыдущий заголовок вопроса: «Очень новая для Java - нужна большая помощь с этим кодом» была необычайно бесполезной, поскольку она ничего не говорит нам о вашей главной проблеме. –
спасибо, когда я удалил пакет, который компилировал ошибку, но есть еще много других проблем с этим кодом, которые я не могу понять, как исправить. Теперь, когда ошибка импорта исправлена, я могу изменить свой заголовок темы, чтобы отразить мои новые проблемы? – user2973447