生成一串随机字符

已知字符的范围是 \u0000 至 \uFFFF,要求根据用户给定的长度,生成一串该长度的随机字符串。另外在这个范围内有很多的乱码,最好加以限制。

这里面有个很有意思的地方是因为要保证输入的长度,而不是循环次数,可以在循环里使用 i-- 来废弃本次循环。

import java.util.Scanner;
public class lianxi2 {
    public static void main(String[] args) {
        System.out.println("请输入字符串的长度:");
        int len = new Scanner(System.in).nextInt();

        String result = "";
        for (int i=0; i<len; i++) {
            char c = (char)(Math.random()*(0xffff+1));

            if ((c>='0' && c<='9')||(c>='a' && c<='z')||(c>='A' && c<='Z')) {
                result += c;
            } else {
                i--;
            }
        }

        System.out.println(result);
    }
}

当然这是一个不明确知道循环次数的问题,使用 while 会更简单。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容