首页 > 编程语言 >LeedCode刷题(2)-Java随机数练习

LeedCode刷题(2)-Java随机数练习

时间:2023-10-28 21:25:49浏览次数:47  
标签:System rand Java Random LeedCode lucky 生成 随机 刷题

2.随机数练习

(1)随机生成数

题目:请编写如下所示程序

  • 随机生成并显示一位数的正整数(1~9的值)
  • 随机生成并显示一位数的负整数(-9 ~ -1的值)
  • 随机生成并显示两位数的正整数(10~99的值)

①Random类总结

  • random是Java提供的一个类库,它的实例会生成一连串的伪随机数
  • Random创建实例有两种方式
Random rand = new Random();         //不指定种子
Random rand = new Random(5);       //指定种子
  • Random实例的使用
Random rand = new Random();         //不指定种子
int lucky = new Random(10);         //生成0~9的随机数         
  • Random类的方法
方法 类型 生成的值的范围
nextBoolean() boolean true或flase
nextInt() int -2147483648 ~ +2147483648
nextInt(n) int 0 ~ n-1
nextLong() long -9223372036854775808 ~ +9223372036854775808
nextDouble() double 大于等于0.0 小于 1.0
nextFloat() float 大于等于0.0 小于 1.0

②个人答案

import java.util.Random;

public class Test {

    public static void main(String[] args) {

        rand();

    }

    public  static void rand(){
        Random rand = new Random();  //创建对象
        int lucky = 1 + rand.nextInt(9);  //生成1~9的正整数
        System.out.println(lucky);

        lucky = -rand.nextInt(9) - 1;  //生成-9 ~ -1的值
        System.out.println(lucky);

        lucky = 10 + rand.nextInt(89);  //生成10~99
        System.out.println(lucky);
    }

}

(2)键盘输入生成随机数

题目:请编写一段程序,读入通过键盘输入的整数值,然后随机生成并显示其+,-5范围内的整数值

  • 生成-5~5 = 生成(0~10)-5 的随机整数
    public static void rand2(){
        Scanner sc = new Scanner(System.in);   //创建键盘输入对象
        Random rand = new Random();  //创建随机数对象
        System.out.print("整数值:");
        int num = sc.nextInt();              //输入整数值
        int lucky = rand.nextInt(11) - 5;  //生成-5~5的正随机数
        int result = num + lucky;
        System.out.println("生成了该值+-5范围内的随机数是:"+result);
    }

(3)生成随机小数

题目

  • 随机生成并显示大于等于0.0小于1.0的实数值
  • 随机生成并显示大于等于0.0小于10.0的实数值
  • 随机生成并显示大于等于-1.0小于1.0的实数值
    public static void rand3(){
        Random rand = new Random();
        double lucky1 = rand.nextDouble();
        System.out.println("随机生成大于等于0.0小于1.0的实数值:" + lucky1);
        double lucky2 = rand.nextDouble() + 9.0;
        System.out.println("随机生成大于等于0.0小于10.0的实数值:" + lucky2);
        double lucky3 = rand.nextDouble()*2.0 - 1 ;
        System.out.println("随机生成大于等于-1.0小于1.0的实数值:" + lucky3);
    }

标签:System,rand,Java,Random,LeedCode,lucky,生成,随机,刷题
From: https://www.cnblogs.com/sillyfox/p/17794650.html

相关文章

  • java——redis随笔——实战——优惠券秒杀——分布式锁
    注意:synchronized用户单机(jvm)上面的锁,对于分布式应用则无能为力。所以对于分布式系统,则需要分布式锁。 分布式锁:满足分布式系统或集群模式下多线程课件并且可以互斥的锁分布式锁的核心思想就是让大家共用同一把锁,那么我们就能锁住线程,不让线程进行,让程序串行执行,这就是分......
  • [Java]Java初学之多线程03--同步与锁
    Intro本篇文章主要关于多线程"同步"以及"锁"的相关内容~正文同步(Synchronize)概念“同步”是基于“并发”的需求而出现的所谓并发,就是同一个对象被多个线程同时操作,比如两个人同时从同一个账户取钱,再比如春运抢票。多个线程同时使用一个资源,必然会造成混乱。想象一下从前......
  • 如何用JavaScript更改元素的类?
    内容来自DOChttps://q.houxu6.top/?s=如何用JavaScript更改元素的类?我该如何使用JavaScript响应onclick或其他事件来更改HTML元素的类?现代HTML5技术用于更改类现代浏览器添加了classList,它提供了更方便地操作类的方法,而无需使用库:document.getElementById("MyElement").c......
  • JavaFrame
    1.课程回顾在本人大三时修了JavaWeb编程和Java框架编程,这两门的课程结构大致是这样:JavaWeb:Java框架:Web开发基础Maven工具Servlet基础Spring框架ServletAPI核心接口SpringMVC会话跟踪数据持久化技术数据访问与JavaBeanBootstrap,Javascript,Iframe,Ajax......
  • Java Hotspot G1 GC 原理
    目录原理概念初始堆占用情况标记RememberSet原理CardTableCollectSet停顿预测模型G1的垃圾回收过程对象分配线程本地分配缓冲区Eden区中分配Humongous区分配堆内存结构传统的GC收集器G1收集器G1垃圾收集周期YoungGCYoungGC总结MixedGC全局并发标记初始标记根区域扫描......
  • 根据ip获取位置信息java
    通常情况下根据内网ip很难获取到位置信息然而根据外网ip获取相对来说比较简单那么如何获取外网ip呢?很简单有很多种方式第一种是通过命令行的方式第二种是通过直接访问该地址https://api.ipify.org/获取到之后直接调用现成的api,替换成自己的外网ip即可获取到位置信息并不是所有的......
  • 一文掌握Java Stream API
    引言JavaStreamAPI自Java8引入以来,已成为处理集合数据的强大工具。它不仅提高了代码的可读性,还优化了性能,使得集合操作变得更加简洁和高效。本文将深入探讨如何利用StreamAPI的常用操作,帮助你更好地掌握这一强大的功能。JavaStreamAPI简介JavaStream是Java8引入的......
  • Java面试专题
    Java面试专题面试题背后的逻辑->拆分问题讲解->回答方式及参考问题Redis篇使用场景1、你在最近的项目中哪些场景使用了redis?缓存:缓存击穿,缓存穿透,缓存雪崩,双写一致性,数据过期策略,数据淘汰策略分布式锁:setnx,redission2、什么是缓存穿透,怎么解决?缓存穿透:查询一个不存在......
  • javaweb--JDBC的API-Connection
    1、获取执行SQL对象2、管理事务setAutoCommit(bool)true为自动提交false为手动提交commit()提交事务rollback()回滚事务packagecom.avb.jdbc;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.SQLException;importjava.sql.Statement;public......
  • Java-全网最详细反射
    Java-反射前言Java的反射(reflection)机制是指在程序的运行状态中,可以构造任意一个类的对象,可以了解任意一个对象所属的类,可以了解任意一个类的成员变量和方法,可以调用任意一个对象的属性和方法。这种动态获取程序信息以及动态调用对象的功能称为Java语言的反射机制。反射被视为动......