持续更新...记录

一、Random类

1、构造方法:

①有参:通过指定种子数进行创建

          (使用相同的种子数创建多个Random对象,这些对象生成的随机数序列将完全相同‌)

          (适用于需要可重复生成相同随机数序列的场景,如科学计算、算法测试)

②无参:使用当前时间的毫秒值作为种子数

          (每次调用时由于时间在变化,因此生成的随机数序列也会不同‌)

          (适用于需要每次运行时生成不同随机数序列的场景,如模拟实验、游戏开发)

public Random(long seed) {
   if (getClass() == Random.class)
        this.seed = new AtomicLong(initialScramble(seed));
   else {
        // subclass might have overriden setSeed
        this.seed = new AtomicLong();
        setSeed(seed);
   }
}

public Random() {
    this(seedUniquifier() ^ System.nanoTime());
}

种子数是随机数生成器的初始值,决定了随机数生成序列的起点。只是随机算法的起源数字,和生成的随机数字的区间无关。

举例生成10个[0,100)之间的随机整数:

public class Main {
    public static void main(String[] args) {

        System.out.print("无参r1生成10个[0,100)之间的随机整数:");
        Random r1 = new Random();
        for (int i = 0; i < 10; i++) {
            System.out.print(r1.nextInt(100)+" ");
        }
        System.out.println();

        System.out.print("无参r2生成10个[0,100)之间的随机整数:");
        Random r2 = new Random();
        for (int i = 0; i < 10; i++) {
            System.out.print(r2.nextInt(100)+" ");
        }
        System.out.println();


        System.out.print("种子数13的r3生成10个[0,100)之间的随机整数:");
        Random r3 = new Random(13); // 使用固定的种子数13
        for (int i = 0; i < 10; i++) {
            System.out.print(r3.nextInt(100)+" ");
        }
        System.out.println();

        System.out.print("种子数13的r4生成10个[0,100)之间的随机整数:");
        Random r4 = new Random(13); // 使用固定的种子数13
        for (int i = 0; i < 10; i++) {
            System.out.print(r4.nextInt(100)+" ");
        }
    }
}
2、常用方法
intnextInt()[0,Integer.MAX_VALUE)
intnextInt(int bound)[0,bound)
floatnextFloat()[0.0,1.0)
doublenextDouble()[0.0,1.0)
doublenextDouble(double bound)[0.0,bound)
 booleannextBoolean()true/false
longnextLong()[0,Long.MAX_VALUE)
longnextLong(long bound)[0,bound)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/904400.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Redis项目中应用

1. Redis简介 Redis是一个基于内存的key-value结构数据库。Redis 是互联网技术领域使用最为广泛的存储中间件。 官网&#xff1a;https://redis.io 中文网&#xff1a;Redis中文网 2. Redis下载与安装 2.1 Redis下载 Redis安装包分为windows版和Linux版&#xff1a; Wind…

cursor连接远程jupyter

cursor的步骤跟vscode应该是基本一样的&#xff0c;主要需要两个插件&#xff0c;一个是remote-ssh&#xff0c;另一个是jupyter 第一步 首先连接远程的ssh&#xff0c;因为我已经新建好了&#xff0c;所以直接选207&#xff0c;没有连接过的就选Add New SSH Host&#xff…

9款热门CRM客户关系管理系统大盘点

在当今竞争激烈的商业环境中&#xff0c;客户关系管理&#xff08;CRM&#xff09;系统已成为企业不可或缺的工具。CRM系统不仅帮助企业管理客户信息&#xff0c;还能提高销售效率、改善客户服务、增强客户满意度。本文将为您盘点9款热门的CRM客户关系管理系统&#xff0c;并重…

IMX6ULL裸机-汇编_反汇编_机器码

程序处理的4个步骤 我们编写的C程序是不能直接在ARM等平台上运行的&#xff0c;必须经过一系列的程序处理才可以&#xff0c;我们的第一个LED程序涉及两个文件&#xff1a;start.S、main.c&#xff0c;它们的处理过程如下&#xff1a; 对于汇编程序&#xff0c;经过汇编之后&a…

【Unity】游戏UI中添加粒子特效导致穿层问题的解决

这里介绍一下简易的ui系统中&#xff0c;添加粒子特效导致的穿层问题 首先是在ui界面中添加粒子特效预制体&#xff0c;这个时候&#xff0c;控制这个粒子显示层级的有两个方面 上图中&#xff0c;如果你的Sorting Layer ID的值&#xff08;Layer排序&#xff09;是大于当前C…

SAP 根据不同生产版本创建销售预测简介

SAP 根据不同生产版本创建销售预测简介 业务场景前台操作1、创建BOM2、创建工艺路线3、创建生产版本4、创建销售预测5、调整销售预测6、查看物料需求业务场景 很多工厂一个物料可能会存在多个BOM,当有多个BOM存在的情况下就会存在多个生产版本,当创建计划独立需求的时候,系…

STM32 RTC 驱动代码(解决了使用HAL库函数导致的复位或者掉电后导致RTC年月日日期清零的问题)

问题背景&#xff1a;在RTC中断里面使用HAL库HAL_RTC_GetDate()和HAL_RTC_GetTime()来获取RTC时间日期。 源码如下图&#xff1a; 问题描述&#xff1a;单片机断电或者复位后的时分秒的时间可以接上&#xff0c;但年月日的日期就会被清零。如图&#xff1a; 导致问题的根本原因…

SpringBoot3+SpringSecurity6基于若依系统整合自定义登录流程

SpringBoot3SpringSecurity6基于若依系统整合自定义登录流程 问题背景 在做项目时遇到了要对接统一认证的需求&#xff0c;但是由于框架的不兼容性&#xff08;我们项目是springboot3&#xff0c;jdk17&#xff0c;springsecurity6.1.5&#xff09;等因素&#xff0c;不得不使…

Mount Image Pro,在取证安全的环境中挂载和访问镜像文件内容

天津鸿萌科贸发展有限公司从事数据安全服务二十余年&#xff0c;致力于为各领域客户提供专业的数据恢复、数据备份解决方案与服务&#xff0c;并针对企业面临的数据安全风险&#xff0c;提供专业的相关数据安全培训。 天津鸿萌科贸发展有限公司是 GetData 公司数据恢复与取证工…

PHP合成图片,生成海报图,poster-editor使用说明

之前写过一篇使用Grafika插件生成海报图的文章&#xff0c;但是当我再次使用时&#xff0c;却发生了错误&#xff0c;回看Grafika文档&#xff0c;发现很久没更新了&#xff0c;不兼容新版的GD&#xff0c;所以改用了intervention/image插件来生成海报图。 但是后来需要对海报…

React 前端框架全面教程:从入门到进阶

React 前端框架全面教程&#xff1a;从入门到进阶 引言 在现代前端开发中&#xff0c;React 作为一款流行的 JavaScript 库&#xff0c;以其组件化、声明式的特性和强大的生态系统&#xff0c;成为了开发者的首选。无论是构建单页应用&#xff08;SPA&#xff09;还是复杂的用…

基于Python的自然语言处理系列(42):Token Classification(标注分类)

在本篇文章中&#xff0c;我们将探讨如何进行 Token Classification&#xff08;标注分类&#xff09;&#xff0c;这是一类为句子中的每个 token&#xff08;词或子词&#xff09;分配标签的任务。该任务可以解决很多问题&#xff0c;例如命名实体识别&#xff08;NER&#xf…

用Pyhon写一款简单的益智类小游戏——2048

文字版——代码及讲解 代码—— import random# 初始化游戏棋盘 def init_board():return [[0] * 4 for _ in range(4)]# 在棋盘上随机生成一个2或4 def add_new_tile(board):empty_cells [(i, j) for i in range(4) for j in range(4) if board[i][j] 0]if empty_cells:i,…

『Linux学习笔记』如何在 Ubuntu 22.04 上安装和配置 VNC

『Linux学习笔记』如何在 Ubuntu 22.04 上安装和配置 VNC 文章目录 一. 『Linux学习笔记』如何在 Ubuntu 22.04 上安装和配置 VNC1. 介绍 二. 参考文献 一. 『Linux学习笔记』如何在 Ubuntu 22.04 上安装和配置 VNC 如何在 Ubuntu 22.04 上安装和配置 VNC 1. 介绍 虚拟网络计算…

【Java】方法的使用 —— 语法要求、方法的重载和签名、方法递归

目录 1. 方法基础知识 1.1 方法的概念 1.2 语法格式 * 注意事项【与C不同】 1.3 return —— 返回值的严格检查【比C语言严格】 2. 形参与实参的关系 3. 方法重载 3.1 什么是方法重载&#xff1f;为什么要方法重载&#xff1f; 3.2 方法重载的规则 4. 方法签名 5. 递…

HT7178 带输出关断的20V,14A全集成同步升压转换器

1、特点 输入电压范围VpIN:2.7V-20V 输出电压范围VouT:4.5V-20V 可编程峰值电流:14A 高转换效率: 95%(VPIN7.2V, VoUT 16V, IouT3A) 94%(VPIN12V,VoUT18V,IoUT4A) 90%(VPIN3.3, VoUT-9V,IOUT3A) 轻载条件下两种调制方式:脉频调制(PFM)和 强制脉宽调试(PWM) 集成输出关断的栅极…

【史上最全SD教程】Stable Diffusion系统教学!Ai绘画零基础入门到精通商业实战 人工智能绘图画图商业变现

一、为什么要学Stable Diffusion&#xff0c;它究竟有多强大&#xff1f; 1.Stable Diffusion能干嘛 Stable Diffusion&#xff08;SD&#xff09;作为一种先进的AI图像生成技术&#xff0c;其功能和应用场景非常广泛。以下是SD的一些主要功能和应用领域&#xff1a; \1. 图…

《链表篇》---两数相加(中等)

题目传送门 方法一&#xff1a;迭代 文字描述看代母注释 class Solution {public ListNode addTwoNumbers(ListNode l1, ListNode l2) {//定义头结点和当前节点ListNode head null,cur null;//carry记录进位情况。int carry 0; while(l1 ! null || l2 ! null){//判断节点是…

QT找不到ffmpeg链接库解决方法

error: undefined reference to avformat_network_init() 一个神奇的报错&#xff0c;查了很久&#xff0c;检查步骤&#xff1a; 1、检查了 pro工程文件 2、链接库的真实性和正确性 在main.cpp中调用没有报错&#xff0c;在其它cpp文件中调用就报错。 破案了&#xff0c;…

详细了解C++11(1)

大家好呀&#xff0c;我是残念&#xff0c;希望在你看完之后&#xff0c;能对你有所帮助&#xff0c;有什么不足请指正&#xff01;共同学习交流哦 本文由&#xff1a;残念ing原创CSDN首发&#xff0c;如需要转载请通知 个人主页&#xff1a;残念ing-CSDN博客&#xff0c;欢迎各…