Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 20.03.2018
Сообщений: 10

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

20.03.2018, 14:28. Показов 1150. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru