如何创建一个在给定范围内随机打乱数字的 int 数组[重复]

2024-05-03

基本上,假设我有一个可以容纳 10 个数字的 int 数组。这意味着我可以在每个索引中存储 0-9(每个数字只能存储一次)。

如果我运行下面的代码:

int[] num = new int[10];
for(int i=0;i<10;i++){
    num[i]=i;
}

我的数组看起来像这样:

[0],[1],.....,[8],[9]

但是,如何在每次运行代码时随机分配数字呢? 例如,我希望数组看起来像:

[8],[1],[0].....[6],[3]

使其成为List<Integer>而不是数组,并使用 Collections.shuffle() 对其进行洗牌。您可以在打乱后从 List 构建 int[]。

如果您确实想直接进行随机播放,请搜索“Fisher-Yates Shuffle”。

以下是使用列表技术的示例:

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class Test {
  public static void main(String args[]) {
    List<Integer> dataList = new ArrayList<Integer>();
    for (int i = 0; i < 10; i++) {
      dataList.add(i);
    }
    Collections.shuffle(dataList);
    int[] num = new int[dataList.size()];
    for (int i = 0; i < dataList.size(); i++) {
      num[i] = dataList.get(i);
    }

    for (int i = 0; i < num.length; i++) {
      System.out.println(num[i]);
    }
  }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何创建一个在给定范围内随机打乱数字的 int 数组[重复] 的相关文章

  • 在Windows上安装Java 11 OpenJDK(系统路径问题)

    Java 11 最近发布了 众所周知 这个版本没有安装文件 当然 要在没有安装程序的情况下安装 Java 我将系统设置 PATH 和 JAVA HOME 设置为解压缩 Java 11 的文件夹的地址 根据对类似问题的已接受回复建议 唯一的事
  • Android Studio 在编译时未检测到支持库

    由于 Android Studio 将成为 Android 开发的默认 IDE 因此我决定将现有项目迁移到 Android studio 中 项目结构似乎不同 我的项目中的文件夹层次结构如下 Complete Project gt idea
  • 解决错误:日志已在具有多个实例的atomikos中使用

    我仅在使用atomikos的实时服务器上遇到问题 在我的本地服务器上它工作得很好 我在服务器上面临的问题是 init 中出错 日志已在使用中 完整的异常堆栈跟踪 java lang RuntimeException Log already
  • 如何查找 Android 设备中的所有文件并将它们放入列表中?

    我正在寻求帮助来列出 Android 外部存储设备中的所有文件 我想查找所有文件夹 包括主文件夹的子文件夹 有办法吗 我已经做了一个基本的工作 但我仍然没有得到想要的结果 这不起作用 这是我的代码 File files array file
  • 在数据流模板中调用 waitUntilFinish() 后可以运行代码吗?

    我有一个批处理 Apache Beam 作业 它从 GCS 获取文件作为输入 我的目标是根据执行后管道的状态将文件移动到两个 GCS 存储桶之一 如果管道执行成功 则将文件移动到存储桶 A 否则 如果管道在执行过程中出现任何未处理的异常 则
  • Convert.FromBase64String 方法的 Java 等效项

    Java 中是否有相当于Convert FromBase64String http msdn microsoft com en us library system convert frombase64string aspx which 将指
  • HDFS:使用 Java / Scala API 移动多个文件

    我需要使用 Java Scala 程序移动 HDFS 中对应于给定正则表达式的多个文件 例如 我必须移动所有名称为 xml从文件夹a到文件夹b 使用 shell 命令我可以使用以下命令 bin hdfs dfs mv a xml b 我可以
  • 矩阵乘法 - 视图/投影、世界/投影等

    在 HLSL 中有很多矩阵乘法 虽然我了解如何以及在何处使用它们 但我不确定它们是如何导出的或它们的实际目标是什么 所以我想知道是否有在线资源可以解释这一点 我特别好奇将世界矩阵乘以视图矩阵以及世界 视图矩阵乘以投影矩阵背后的目的是什么 您
  • Prim 的迷宫生成算法:获取相邻单元格

    我基于 Prim 算法编写了一个迷宫生成器程序 该算法是 Prim 算法的随机版本 从充满墙壁的网格开始 选择一个单元格 将其标记为迷宫的一部分 将单元格的墙壁添加到墙壁列表中 While there are walls in the li
  • Spring Data 与 Spring Data JPA 与 JdbcTemplate

    我有信心Spring Data and Spring Data JPA指的是相同的 但后来我在 youtube 上观看了一个关于他正在使用JdbcTemplate在那篇教程中 所以我在那里感到困惑 我想澄清一下两者之间有什么区别Spring
  • 尝试使用 Ruby Java Bridge (RJB) gem 时出现错误“无法创建 Java VM”

    我正在尝试实现 Ruby Java Bridge RJB gem 来与 JVM 通信 以便我可以运行 Open NLP gem 我在 Windows 8 上安装并运行了 Java 所有迹象 至少我所知道的 都表明 Java 已安装并可运行
  • 将多模块 Maven 项目导入 Eclipse 时出现问题 (STS 2.5.2)

    我刚刚花了最后一个小时查看 Stackoverflow com 上的线程 尝试将 Maven 项目导入到 Spring ToolSuite 2 5 2 中 Maven 项目有多个模块 当我使用 STS 中的 Import 向导导入项目时 所
  • Windows 上的 Nifi 命令

    在我当前的项目中 我一直在Windows操作系统上使用apache nifi 我已经提取了nifi 0 7 0 bin zip文件输入C 现在 当我跑步时 bin run nifi bat as 管理员我在命令行上看到以下消息 但无法运行
  • Java - 不要用 bufferedwriter 覆盖

    我有一个程序可以将人员添加到数组列表中 我想做的是将这些人也添加到文本文件中 但程序会覆盖第一行 因此这些人会被删除 如何告诉编译器在下一个空闲行写入 import java io import java util import javax
  • 如何配置eclipse以保持这种代码格式?

    以下代码来自 playframework 2 0 的示例 Display the dashboard public static Result index return ok dashboard render Project findInv
  • com.jcraft.jsch.JSchException:身份验证失败

    当我从本地磁盘上传文件到远程服务器时 出现这样的异常 com jcraft jsch JSchException Auth fail at org apache tools ant taskdefs optional ssh Scp exe
  • 中断连接套接字

    我有一个 GUI 其中包含要连接的服务器列表 如果用户单击服务器 则会连接到该服务器 如果用户单击第二个服务器 它将断开第一个服务器的连接并连接到第二个服务器 每个新连接都在一个新线程中运行 以便程序可以执行其他任务 但是 如果用户在第一个
  • 如何同时接受int和float类型的输入?

    我正在制作一个货币转换器 如何让 python 同时接受整数和浮点数 我就是这样做的 def aud brl amount From to ER 0 42108 if amount int if From strip aud and to
  • 如何将变量插入 PHP 数组?

    我在网上查了一些答案 但都不是很准确 我希望能够做到这一点 id result id info array id Example echo info 0 这有可能吗 您需要的是 不推荐 info array id Example varia
  • Swagger/Openapi-Annotations:如何使用 $ref 生成 allOf?

    我正在生成 Rest 端点 包括添加OpenAPI Swagger对生成的代码进行注释 虽然它对于基本类型运行得很好 但我在自定义类方面遇到了一些问题 现在我有很多自定义类的重复架构条目 使用 Schema 实现 MyClass class

随机推荐

  • 禁用 jquery-chosen 下拉菜单

    我有一个正在使用的选择 div选择jquery插件 http harvesthq github io chosen 设计样式并添加功能 最值得注意的是搜索 div 看起来像这样
  • 如何调整jupyterlab笔记本中滚动输出高度的大小?

    有没有办法调整 jupyterlab 笔记本中滚动输出高度的大小 潜在的解决方案 但需要 HTML CSS 知识 我从这个问题中找到了这个片段调整 ipython 笔记本输出窗口的大小 https stackoverflow com que
  • NLTK 中的无监督 HMM 训练

    我只是想进行非常简单的无监督 HMM 训练nltk http www nltk org 考虑 import nltk trainer nltk tag hmm HiddenMarkovModelTrainer from nltk corpu
  • 如何在编写 XML 文件时忽略 DTD 验证但保留 Doctype?

    我正在开发一个系统 该系统应该能够读取任何 或至少是任何格式良好的 XML 文件 操作一些节点并将它们写回到同一个文件中 我希望我的代码尽可能通用 但我不希望 对代码中任何位置的架构 文档类型信息的硬编码引用 文档类型信息位于源文档中 我想
  • 通用接口列表

    如果我有一个带有几个实现类的通用接口 例如 public interface IDataElement
  • cocoa——让嵌套的 NSView 和 CALayers 按比例调整大小

    我的 NSWindow 的 contentView 是 NSView 子类 它还有一些其他 NSView 子类作为子视图 子视图是基于图层的 而这些图层又包含子图层 一些子层具有另外的子子层 我希望在调整窗口大小时 整个内容也按比例调整大小
  • 嵌套 forEach:未捕获类型错误:data.forEach 不是函数

    我不想使用任何 for 循环或任何常规循环 我正在尝试使用forEach但我收到错误 未捕获的类型错误 data forEach 不是函数 return falsyData map function data data forEach fu
  • ASP.NET 中的自定义角色

    我正在开发一个 ASP NET 网站 该网站使用带有自定义身份验证机制的表单身份验证 该机制设置e Authenticated以编程方式protected void Login Authenticate object sender Auth
  • 在 Mac OS X 上的某个时刻,移动光标未显示在焦点上

    我有基于 Swing 的应用程序 每当我们在组件上移动鼠标时 它都会显示移动光标图标 并通过拖动来移动该组件 我已经为此使用了代码 mycomponent setCursor Cursor getPredefinedCursor Curso
  • 安装 Canary 7 后无法打开 Android studio 4.2 Canary 8 或 9

    语境 MacOS Catalina 10 15 6Java 1 8 0 161 将 Android Studio 4 2 Canary 7 更新到 Canary 8 以及 Canary 9 后 它无法再打开 我尝试从 Android Stu
  • 非常大的 JTable、RowFilter 和额外负载

    我想请求澄清 RowFilter 的使用及其对性能的影响 我通过 include Entry 方法实现了一个过滤器 对于每一行 只需检查模型中其对应值是否设置了布尔标志 如果是 则返回 true 否则返回 false 现在 我拥有的 JTa
  • 为什么 Z3 对于很小的搜索空间来说很慢?

    我正在尝试制作一个 Z3 程序 在 Python 中 它生成执行某些任务的布尔电路 例如 添加两个 n 位数字 但性能非常糟糕 以至于对整个解决方案空间进行强力搜索将导致快一点 这是我第一次使用 Z3 所以我可能会做一些影响我性能的事情 但
  • 添加ssrs报告描述

    无论如何 我可以添加一个在执行前显示在报告中的 ssrs 报告描述吗 我用谷歌搜索 大多数人说这是不可能的 但必须有一种方法来调整它 对吗 对于仍然需要添加用户可以在执行报告之前阅读的报告描述的任何人 我在我使用的两个 SSRS 版本 20
  • 如何使用 RedirectToAction 维护 ModelState?

    如果我的操作中有错误 如何返回不同操作的结果或将用户移至不同的操作ModelState不失去我的ModelState信息 场景是 Delete操作接受来自我的 DELETE 表单的 POSTIndex动作 视图 如果有错误Delete我想将
  • python中的指数分布随机生成器(对数函数)?

    我真的需要帮助 因为我被困在代码的开头 我被要求创建一个函数来研究直方图上的指数分布 函数为 x log 1 y 是一个常数 我在代码中将其称为 lamdr 并简单地给了它 10 我给了 N 随机数的数量 10 并运行了代码 但结果和生成的
  • 将多个参数绑定到mysqli查询中

    现在我需要使用以下结构来处理将多个参数绑定到 mysqli 查询中 if words total 1 statement gt bind param s words 0 else if words total 2 statement gt
  • 在 Visual Studio 中包含一个似乎仅适用于 Linux 的网格框架?

    我使用带有 Web Essentials 扩展的 Visual Studio 2013 来完成所有 Sass Scss 工作 这很棒 我发现了一个关于网格框架的教程 我真的很想使用它 名为Susy https github com eric
  • 设置显式注释处理器

    我正在尝试将 Maven 存储库添加到我的 Android Studio 项目中 当我进行 Gradle 项目同步时 一切都很好 但是 每当我尝试构建我的 apk 时 都会收到此错误 Execution failed for task ap
  • 无法使用docx将base64编码的图像添加到word文档中

    我需要使用 python docx 模块将图像添加到 word 文档中 将base64编码的数据转换为base64字节 然后转换为图像流 现在我尝试将图像流添加到word文档中 import io from docx import Docu
  • 如何创建一个在给定范围内随机打乱数字的 int 数组[重复]

    这个问题在这里已经有答案了 基本上 假设我有一个可以容纳 10 个数字的 int 数组 这意味着我可以在每个索引中存储 0 9 每个数字只能存储一次 如果我运行下面的代码 int num new int 10 for int i 0 i l