java -- 随机获取字母或者数字

版权声明:本文为博主原创文章,如需转载请标明出处。 https://blog.csdn.net/DGH2430284817/article/details/87798504

           java只有涉及到随机的,最经常用到的方法就是Math.random(),这个方法会返回一个大于0小于1的随机数( 能取0不能取1 ),如果我们要随机0-9,就可以用(Math.random()*10)来表示,随机0-99也类似如此操作。

一:随机获取0-66代码实例:

	public static void main(String[] args) {
		for(int i = 0; i < 10; i++) {
			System.out.println("随机获取0-66中的一个数:" + (int)(Math.random()*67));;
		}
		
	}

          测试结果:

随机获取0-66中的一个数:47
随机获取0-66中的一个数:11
随机获取0-66中的一个数:19
随机获取0-66中的一个数:49
随机获取0-66中的一个数:53
随机获取0-66中的一个数:20
随机获取0-66中的一个数:66
随机获取0-66中的一个数:57
随机获取0-66中的一个数:20
随机获取0-66中的一个数:61

 

二:有时候,我们想随机获取的不是数字,而是字母,这时候我们要用到char

先看看char前两百个都是哪些

字符,执行以下代码:

	public static void main(String[] args) {
		
		for(int i =0; i<200; i++){
			char c = (char)i ; 
			System.out.print(i + ":" + c + "  ");
			if (i%10 == 0) {
				System.out.println();
			}
		}
        }

结果:

由上图可以发现,大写字母A--Z是从65-90 ,小写字母a--z是从97--122 , 所以如果要随机取一个字符的话可以用以下代码:

	public static void main(String[] args) {
		char c=(char)(int)(Math.random()*26+97);
		System.out.println("随机取一个小写字母:" + c);
		c=(char)(int)(Math.random()*26+65);
		System.out.println("随机取一个大写字母:" + c);
        }

结果:

随机取一个小写字母:n
随机取一个大写字母:A

三:有时候,我们想要随机的中一堆字符和数字和符号里面随机获取一个

代码实例(一堆数据中随机取10个):

	public static void main(String[] args) {
		//先定义取值范围
		String chars = "0123456789QWERTYUIOPASDFGHJKLZXCVBNMabcdefghijklmnopqrstuvwxyz!~@#$%^&*()_+-=`[]{};':,.<>/?|";
		StringBuffer value = new StringBuffer();
		for (int i = 0; i < 10; i++) {
			value.append(chars.charAt((int)(Math.random() * 92)));
		}
		System.out.println("随机选取的10个数为:" + value.toString());
	}

结果:

随机选取的10个数为:a8sLv0wK24

猜你喜欢

转载自blog.csdn.net/DGH2430284817/article/details/87798504