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

未完待续...

与君共勉!待续

欢迎指错,一起学习

相关推荐
_殊途16 分钟前
项目开发手册-开发流程
java
~无忧花开~19 分钟前
CSS学习笔记(二):CSS动画核心属性全解析
开发语言·前端·css·笔记·学习·css3·动画
想要AC的sjh30 分钟前
华为Java专业级科目一通过心得
java·开发语言·华为
青鱼入云1 小时前
Java 11对集合类做了哪些增强?
java
qq_12498707531 小时前
基于Spring Boot的高校实习实践管理系统(源码+论文+部署+安装)
java·spring boot·后端·毕业设计
oak隔壁找我1 小时前
SpringBoot + MyBatis 配置详解
java·数据库·后端
oak隔壁找我1 小时前
SpringBoot + Redis 配置详解
java·数据库·后端
躺平的赶海人1 小时前
C# Dictionary 线程安全指南:多线程下操作 Dictionary<string, DateTime> 的加锁策略
java·安全·c#
帧栈1 小时前
开发避坑指南(64):修复IllegalArgumentException:参数值类型与期望类型不匹配
java·数据库
坐不住的爱码1 小时前
ArrayList和LinkedList的区别
java