java - 是否可以从不同类的枚举中选择随机值?
问题描述
我只是想知道如何从不同类的枚举中选择随机值。例如,我将 Person 和 Victorian 作为类,而这两个类都没有 main 方法。在 Person 类中,有一个枚举 Profession,它代表“医生”、“ceo”、“失业”和“未知”,在 Victorian 类中,我想从这个枚举中选择随机值。是否可以?
解决方案
你可以做:
Profession randomValue =
Profession.values()[new Random().nextInt(Profession.values().length)];
如果您想更频繁地执行此操作,您应该只初始化 Random 一次:
Random random = new Random();
Profession[] enumValues = Profession.values();
for (int i = 0; i < 100; i++) {
Profession randomValue = enumValues[random.nextInt(enumValues.length)];
System.out.println(randomValue);
}
推荐阅读
- javascript - 如何将值数组传递给 parsleyJS validateMultiple 验证器?
- css - CSS 变换不会改变 CSS 布局
- php - xdebug.remote_handler 在 PHP.INI 中设置,但未在 PHPinfo 中显示
- django - 从请求对象获取数据时,“WSGIRequest”对象没有属性“对象”错误
- javascript - 加载事件不适用于所选元素
- vscode-settings - vscode 启动时显示错误 NODE_TLS_REJECT_UNAUTHORIZED 错误
- sql - VB.Net SQL Query - 我正在尝试连接两列但是我遇到了问题
- python - 在python for循环中删除变量是否会提高内存效率?
- java - 正则表达式匹配两个单字母单词之间的和号
- html - Bootstrap navbar:调整导航栏高度后出现汉堡包问题