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;
    }

未完待续...

与君共勉!待续

欢迎指错,一起学习

相关推荐
其实防守也摸鱼8 分钟前
面试常问问题总结--护网蓝队方向
网络·笔记·安全·面试·职场和发展·护网·初级蓝队
one_love_zfl14 分钟前
java面试-微服务组件篇
java·微服务·面试
一只大袋鼠17 分钟前
Java进阶:CGLIB动态代理解析
java·开发语言
环流_31 分钟前
HTTP 协议的基本格式
java·网络协议·http
爱滑雪的码农32 分钟前
Java基础十三:Java中的继承、重写(Override)与重载(Overload)详解
java·开发语言
【 】42336 分钟前
C++&STL(Standard Template Library,标准模板库)
java·开发语言·c++
茉莉玫瑰花茶36 分钟前
LangChain 核心组件 [ 2 ]
java·数据库·langchain
信徒_1 小时前
ID 生成技术选型
java
z19408920661 小时前
Word题库转结构化:告别换行、选项与答案乱象
经验分享·笔记·语音识别
a8a3021 小时前
Laravel8.x新特性全解析
java·spring boot·后端