0 / 0 / 0
Регистрация: 20.03.2018
Сообщений: 10

Счетчик элементов в базе по совпадающему полю, вывод значения последнего элемента

20.03.2018, 14:28. Показов 1172. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите как подсчитать количество записей с совпадающим полем и выводить это значение вместо обычного инкремента currentNumber

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public User createUser(User user) {
        Set<User> set = userRepository.getAllUsers(); // JPA запрос "SELECT DISTINCT u.userTitle FROM User u" 
        Object[] list = set.toArray();
        HashMap<Object, Integer> hm = new HashMap<Object, Integer>();
        Integer currentNumber = userRepository.getMaxUserNumber().orElse(0); // JPA запрос возвращающий количество записей
        Integer item;
 
        for (Object i : list) {
            item = hm.get(i);
            if (item == null) hm.put(i, 1); // если нет в списке то добавить со значением 1
            else hm.put(i, item + 1); // если есть такая фамилия(Key), то +1
        }
       
        user.setUserNumber(currentNumber + 1); //currentNumber - hm.size()
        return userRepository.save(user);
    }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
20.03.2018, 14:28
Ответы с готовыми решениями:

Вычислить количество элементов, значения которых меньше значения последнего элемента массива
Вычеслить кол-во элементов, значения которых меньше значения последнего элемента массива. Массив из 10 элементов. Элементы массива -...

Вычислить количество элементов, значения которых меньше значения последнего элемента массива
Здравствуйте, нужна помощь. Надо вычислить количество элементов, значения которых меньше значения последнего элемента массива. как...

Сформировать новый массив из элементов исходного массива, значения которых больше значения последнего элемента
Вводить элементы одномерного массива до тех пор , пока текущее значение больше суммы уже введенных четных значений. Сформировать новый...

4
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
20.03.2018, 15:19
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
public static void main(String args[]) throws IOException {
        List<User> users = new ArrayList<>();
        users.add(new User("a", 10));
        users.add(new User("a", 11));
        users.add(new User("b", 12));
        List<User> collect = users.stream().map(UserDecorator::new).distinct().map(UserDecorator::getUser).collect(toList());
        System.out.println(collect);
    }
 
    @Data
    @AllArgsConstructor
    class User {
        private String name;
        private int age;
    }
 
    @Data
    @AllArgsConstructor
    class UserDecorator {
        private User user;
 
        @Override
        public boolean equals(Object o) {
            if (this == o) {
                return true;
            }
            if (o == null || getClass() != o.getClass()) {
                return false;
            }
            UserDecorator that = (UserDecorator) o;
            return Objects.equals(user.getName(), that.user.getName());
        }
 
        @Override
        public int hashCode() {
            return user.getName().hashCode();
        }
    }
собственно вместо toList можно сделать toMap и посчитать количество, если надо
1
0 / 0 / 0
Регистрация: 20.03.2018
Сообщений: 10
20.03.2018, 17:12  [ТС]
xoraxax, благодарю за ответ, можете пояснить относительно
List<User> collect = users.stream().map(UserDecorator::new).d istinct().map(UserDecorator::getUser).co llect(toList());

Не получилось корректно у себя аналогичным способом реализовать, collect после операции с листом что в себе будет содержать?
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
20.03.2018, 20:34
лист пользователей, в котором не будет двух пользователей с одинаковым именем

Добавлено через 24 секунды
можно же запустить и посмотреть, да?
0
0 / 0 / 0
Регистрация: 20.03.2018
Сообщений: 10
21.03.2018, 00:00  [ТС]
Благодарю, а как получить последний добавленный элемент(не общее число элементов в списке, а именно тот, что был добавлен последним)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.03.2018, 00:00
Помогаю со студенческими работами здесь

Найти количество элементов массива, отличных от значения последнего элемента
массив из 50 чисел и заполнить его случайными числами.сколько в нем элементов, отличных от последнегоелемента

Найти сумму элементов значения которых больше последнего элемента матрицы
Тема:матрицы Помогите пожалуйста с задачей и блок-схемой В матрице А найти сумму элементов значения которых больше последнего...

В матрице найти сумму элементов значения которых больше последнего элемента
В матрице А найти сумму элементов значения которых больше последнего элемента мат-рицы. Если таких элементов нет, то на печать выдать...

Массив: Вычислить произведение элементов, значение которых меньше значения последнего элемента.
Помогите решить Вычислить произведение элементов, значение которых меньше значения последнего элемента. Тип данных действ. Размер...

Определить количество элементов, значения которых меньше модуля последнего отрицательного элемента массива
В одномерном числовом массиве x определить количество элементов, значения которых меньше модуля последнего отрицательного элемента ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru