簡體   English   中英

如何從流中獲取隨機對象並將其返回

[英]How to get random objects from a stream and return it

我有一些來自Google的用戶的列表,現在在流中,我說給每個Google用戶都新建一個HRVacationUser(女巫是模型),然后給我(他們的電子郵件,一些隨機日期,一些隨機日期),該隨機日期用於隨機假期。 但是在那種情況下,我設置每個用戶都處於空缺狀態。 如何從Google用戶那里獲取隨機用戶並設置假期的隨機日期,以便我可以在數據庫中發出請求-給我這個正在假期的用戶?

我的列表/ GoogleUser>的大小例如為80,我只想為隨機用戶設置空缺日期,然后向if(用戶處於空缺狀態返回'user')發出請求,並在數據庫中進行請求以給我假期用戶

public List<HRVacationUser> listVacationGoogleUsers(List<GoogleUser> allGoogleUsers){
        LocalDate date = LocalDate.now();
        List<HRVacationUser> collectHRUser = allGoogleUsers.stream()
                .map(user ->
                        new HRVacationUser(user.getPrimaryEmail(), date.minusDays(ThreadLocalRandom.current().nextInt(1,5)), date.plusDays(ThreadLocalRandom.current().nextInt(1, 5))))
                .collect(toList());
        return collectHRUser;
    }

您可以根據列表大小從列表中隨機抽取一個項目:

import java.util.Random;

List<?> yourList = new ArrayList<>();
yourList.get(new Random().nextInt(yourList.size()));

您可以使用隨機庫

import java.util.Random;

隨機元素的更多可能解決方案在這里 =)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM