Android Studio的笔记--随机数

android java获取随机数

String

获取 x 位 由0到9组成的随机字符串。

调用方法

java 复制代码
Log.i("lxh", "获取由数字0到9组成的随机字符串:" + getStr(12));

函数

java 复制代码
    public String RandomStr(int length) {
        String characters = "0123456789";
        Random random = new Random();
        StringBuilder sb = new StringBuilder(length);
        for (int i = 0; i < length; i++) {
            int randomIndex = random.nextInt(characters.length());
            char randomChar = characters.charAt(randomIndex);
            sb.append(randomChar);
        }
        return sb.toString();
    }

    private static Set<String> stringSet = new HashSet<>();

    public boolean isRepeat(String str) {
        if (stringSet.size() >= 10000) {
            stringSet.clear();
        }

        if (!stringSet.contains(str)) {
            stringSet.add(str);
            return true;
        }
        return false;
    }

    public String getStr(int length) {
        String back = "";
        while (true) {
            String ss = RandomStr(length);
            Log.d("TAG", "rs=" + ss);
            if (isRepeat(ss)) {
                back = ss;
                break;
            }
        }
        return back;
    }

未完待续...

与君共勉!待续

欢迎指错,一起学习

相关推荐
Full Stack Developme12 分钟前
spring-beans 解析
java·后端·spring
码农-阿杰24 分钟前
生成偏向锁 + JIT
java
czt_java25 分钟前
线程安全问题
java·开发语言·jvm
likerhood29 分钟前
设计模式-装饰器模式(java)
java·设计模式·装饰器模式
爱学习的小可爱卢30 分钟前
Java抽象类与接口:面试高频考点全解析
java·javase
WL_Aurora1 小时前
Java多线程详解(一)
java·开发语言
会编程的土豆1 小时前
Go 语言中的 `new` 关键字(创建指针)
java·算法·golang
逸Y 仙X1 小时前
文章三十一:ElasticSearch 管道聚合
java·大数据·elasticsearch·搜索引擎·全文检索
Full Stack Developme1 小时前
Spring 发展历史
java·后端·spring
x_yeyue1 小时前
2026第十七届蓝桥杯c++B组省赛题解
笔记·算法·蓝桥杯·acm·题解