可以使用Java的Random类来实现从一个Set中随机取3个String,并且要求不能重复。以下是一个示例代码:

import java.util.HashSet;
import java.util.Random;
import java.util.Set;

public class RandomSetExample {
    public static void main(String[] args) {
        Set<String> stringSet = new HashSet<>();
        stringSet.add('String1');
        stringSet.add('String2');
        stringSet.add('String3');
        stringSet.add('String4');
        stringSet.add('String5');

        Set<String> randomStrings = getRandomStrings(stringSet, 3);
        for (String randomString : randomStrings) {
            System.out.println(randomString);
        }
    }

    public static Set<String> getRandomStrings(Set<String> stringSet, int count) {
        if (count > stringSet.size()) {
            throw new IllegalArgumentException('Count cannot be greater than the size of the set.');
        }

        Set<String> randomStrings = new HashSet<>();
        Random random = new Random();

        while (randomStrings.size() < count) {
            int randomIndex = random.nextInt(stringSet.size());
            String randomString = (String) stringSet.toArray()[randomIndex];
            randomStrings.add(randomString);
        }

        return randomStrings;
    }
}

这个示例代码首先创建了一个包含多个字符串的Set,然后调用getRandomStrings方法从该Set中随机取3个不重复的字符串,并将结果打印输出。getRandomStrings方法会根据传入的count参数来判断需要取几个字符串,然后使用Random类生成一个随机索引,通过toArray方法获取Set中的元素数组,并根据随机索引来获取对应的字符串,将其添加到结果的Set中,直到结果Set的大小达到count为止。最后返回结果Set。

Java 从 Set<String> 中随机获取不重复的字符串

原文地址: https://www.cveoy.top/t/topic/pe8e 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录