Объясните как реализовать метод.

Hotosho

Задача - написать методы.

getUserNames() {} = для получения массива имен пользователей.

getUserIds() {} = для получения массива id пользователей.

getUserNameByld(long id) {} = для получения имени пользователя по его id.

Первые два методом проб и ошибок я написал, третий не получается. Пожалуйста объясните как реализовать методы. Каждое задание с методом очень трудно решать. Я хочу в этом на все 100% разобраться.

public class User {

    private long id;
    private String name;
    private String sessionId;

    public User(long id, String name, String sessionId) {
        this.id = id;
        this.name = name;
        this.sessionId = sessionId;
    }

    public long getId() {
        return id;
    }

    public String getName() {
        return name;
    }

    public String getSessionId() {
        return sessionId;
    }
}

Второй класс

public class UserRepository {

    private User[] users;

    public UserRepository(User[] users) {
        this.users = users;
    }

    public User[] getUsers() {
        return users;
    }


    public String[] getUserNames() {

        String[] names = new String[getUsers().length];

        int index = 0;
        for (User user : users) {
            if (user != null)
                names[index] = user.getName();

        }
        return names;


    }

    public Long[] getUserIds() {

        Long[] arrayId = new Long[users.length];

        int i = 0;
        for (User user : users) {
            if (user != null)
                arrayId[i] = user.getId();
        }
        return arrayId;

    }

    public Long getUserNameByld(long id) {

        String[] userNameId = new String[users.length];

        int id = 0;
        for (User user : users){
            if (user != null)
                userNameId[id] = user.getSessionId();
        }

    }
}
1 ответ

Hotosho

public Long getUserNameByld(long id) {
    for (User user : users) {
        if (user.getId() == id) {
            return user.getName();
        }
    }
    return null; //user by id not found
    //можно возвращать тот результат, который будет означать, что пользователя по такому id нет, или выбрасывать исключение - зависит от вашей логики
}

licensed under cc by-sa 3.0 with attribution.