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

未完待续...

与君共勉!待续

欢迎指错,一起学习

相关推荐
无敌最俊朗@10 小时前
Qt面试题day01
java·数据库·面试
_Kayo_10 小时前
vue3 computed 练习笔记
前端·vue.js·笔记
TracyCoder12310 小时前
微服务框架选型学习笔记
笔记·学习·微服务
摇滚侠10 小时前
2025最新 SpringCloud 教程,Nacos-注册中心 @LoadBalanced 注解式负载均衡,笔记11
笔记·spring cloud·负载均衡
pq113_610 小时前
开源软件学习笔记 - 移植SFUD
笔记·stm32·sfud·ft4222h
AH_HH10 小时前
Spring Boot 4.0 发布总结:新特性、依赖变更与升级指南
java·spring boot·后端
mqiqe10 小时前
【Spring AI MCP】六、SpringAI MCP 服务端 STDIO & SSE
java·人工智能·spring
Tadas-Gao10 小时前
Spring Boot 4.0架构革新:构建更精简、更安全、更高效的Java应用
java·spring boot·分布式·微服务·云原生·架构·系统架构
vx_bisheyuange10 小时前
基于SpringBoot的库存管理系统
java·spring boot·后端·毕业设计
专注于大数据技术栈10 小时前
java学习--单例模式之懒汉式
java·学习·单例模式