Random类和String类

Random类:

java.util.Random类

生成随机数:

上面的Math类的random()方法也可以产生随机数,其实Math类的random()方法底层就是用Random类实现的。

复制代码
Random rand = new Random();  //创建一个Random对象
获取随机数的方法:

|---------------------|---------------|
| int nextInt(); | 返回下一个随机数 |
| int nextInt(int n); | 返回0到n-1之间的随机数 |

例子:生成0-20随机数:
复制代码
public static void main(String[] args) {
        Random rand = new Random();
        //生成20个随机数并且显示
        for (int i = 0; i<20;i++){
            int num = rand.nextInt(10);
            System.out.println("第"+i+"个随机数是:"+num);
        }
    }
种子值:

用同一个种子值来初始化两个Random 对象,然后用每个对象调用相同的方法,得到的随机数也是相同的。

种子的数值不同代表不同的状态,没什么实际意义

复制代码
 public static void main(String[] args) {
        // 使用相同的种子值初始化两个 Random 对象
        long seed = 42;
        long seed2 = 23;
        Random random1 = new Random(seed);
        Random random2 = new Random(seed);
        // 打印两个 Random 对象的随机数
        System.out.println("Random1: " + random1.nextInt(100));
        System.out.println("Random2: " + random2.nextInt(100));
        // 再次打印,看看结果是否一致
        System.out.println("Random1: " + random1.nextInt(100));
        System.out.println("Random2: " + random2.nextInt(100));

         Random random3 = new Random(seed2);
         System.out.println(random3.nextInt(200));
         System.out.println(random3.nextInt(200));
     
    }

String类:

String类位于java.lang包中,具有丰富的方法计算字符串的长度、比较字符串、连接字符串、提取字符串

1.length()方法:

返回字符串中的字符数

2.equals( )方法

比较存储在两个字符串对象的内容是否一致

比较原理:检查组成字符串内容的字符是否完全一致

"=="和equals()区别:

==:判断两个字符串在内存中的地址,即判断是否是同一个字符串对象

字符串比较的其他方法:
使用equalsIgnoreCase()忽略大小写:
复制代码
public static void main(String[] args) {
        String str1 = "AsapBayby";
        String str2 = "asApBayBy";
        if (str1.equalsIgnoreCase(str2)){
            System.out.println("忽略大小写相等");
        }
    }
使用toLowerCase()小写:

比较方法:str1.toLowerCase().equals(str2.toLowerCase())

复制代码
 public static void main(String[] args) {
        String str1 = "AsapBayby";
        String str2 = "asApBayBy";
        if (str1.toLowerCase().equals(str2.toLowerCase())){
            System.out.println("都转成小写相同");
            System.out.println(str2);
        }else {
            System.out.println("忽略大小写不相等");
        }

    }
使用toUpperCase()大写:

同理,比较条件换成:

复制代码
 if (str1.toUpperCase().equals(str2.toUpperCase())){
            System.out.println("都转成大写相同");
            System.out.println(str2);
        }
相关推荐
哦虎!2 小时前
【JavaEE】网络初识
java
for_ever_love__2 小时前
MySQL ORDER BY 排序优化:从 Using filesort 到索引有序扫描(含双路 / 单路排序原理)
java·mysql·优化·存储·by·order·filesort
程序猿追3 小时前
kotlin-retry 接入鸿蒙后,怎样确认它真的会停止重试
开发语言·kotlin·harmonyos
我是人✓3 小时前
Java文件上传三方式对比:从传统到SpringBoot
java·开发语言
智能直播3 小时前
网络RTMP拉流不卡顿、声音不同步,一文讲透缓冲区、时间戳
开发语言·ffmpeg·php·音视频·视频编解码
欣栀♡3 小时前
JVM 频繁 Full GC 先看日志括号里的 cause,jstat 的 FGC 在 JDK 8 上会骗人
java·jvm
IT研究室3 小时前
最新计算机毕业设计选题推荐-基于spring boot的葡萄酒文化宣传网站-网站-文档指导-Java-springboot
java·spring boot·课程设计
慧都小项3 小时前
MyEclipse 中创建和测试 JAX-RS REST 接口:从项目配置到 REST Explorer
java·restful·myeclipse·jax-rs
Wang's Blog3 小时前
Java 项目实战: 交友项目 - 入门案例:编写 Dubbo 服务提供者
java·dubbo·交友
墨云安全4 小时前
内网资产无法暴露到公网,怎么做安全检测?2026 年内网渗透测试的落地路径
开发语言·安全·网络安全·渗透测试·php