黑马程序员-生成随机数字

---------------------- android培训、 java培训、期待与您交流! ----------------------

生成随机数可以用Random类或者Math类的random方法其实就是调用的Radom类的nextDoble方法 它是生成的0到1之间不包括1的双精度小时

nextInt方法生成一个随机的整数范围是Int类型的取值范围有可能是正或者是负 带参数的是生成o到指定数不包括该数这个区间的整数 可以在后面进行算数运行如加减乘除或者取模 可以得到起始值部位0的区间  nextLong除了不允许参数外和int的功能一样 nextBoolean50%的几率生成true或者false 其他的几个跟nextLong的运用方式一样不支持参数知识类型不同而已    Random支持带参数的构造方法 参数叫做种子值根据这个种子值做一定的算数运行生成随机数 跟结果没什么关系 不带参数的话是按照当前时间的一个值来从当种子值

如果种子值相同 同批次的话生成的随机数一样如

Random rd1=new Random(5);

Random rd2=new Random(5);

rd1.nextInt():

rd2.nextInt();

上面的代码生成的随机数是相同的,如果想生成相同的随机数可以用上面的方法

Random rd=new Random();

生成0到n的随机整数包括n

rd.nextInt(n+1);  (int)(rd.nextDouble()*(n+1));

生成[n-n1]的随机整数包括n1

rd.nextInt(n1-n+1)+n;   (int)(rd.nextDouble()*(n1-n+1)+n;                       

生成A-Z的随机字符    大写A  65  Z 90 小写a 97  z  97+25  大写z和小写a相差6个字符 91是[  其他的具体多事打印下或者查下asic码就可以了

(Character)rd.nextInt(26)+'A' 或者+65   26是'Z'-'A'+1的结果  如果想小写的话就+'a'或者+97

---------------------- android培训、 java培训、期待与您交流! ----------------------详细请查看: http://edu.csdn.net/heima

你可能感兴趣的:(黑马程序员-生成随机数字)