随机获取26个小写英文字母

来源:互联网 发布:java经典编程300例pdf 编辑:程序博客网 时间:2024/05/17 03:32
public class Test {public static void main(String[] args) {for(int i = 0; i < 100; i++) {char c = (char) (Math.random() * 26 + 'a');System.out.println(c);}}}

        分析: Math.random() 获取0--1的任意小数(包括0, 不包括1), 那么 Math.random( ) * 26 最小值为0, 最大值不会超过26..  然后 0 -- 26 加 'a'(字符a为97) , 所以    

Math.random() * 26 + 'a'的取值范围为 97 -- 123(不包括123), 而这个范围的整数正好对应字母 a -- z, 所以算出来的值就是a -- z的随机字母. 注意<pre name="code" class="java">Math.random() * 26 + 'a'算出来的结果要强转成char类型,因为 Math.random() * 26 + 'a'的值是double类型, 强转char类型会截掉后面的小数部分.最终就变成整数, 因为是 char类型, 所以打印结果就是字母..

                                             
0 0
原创粉丝点击