首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

java编程思维的一个程序

2012-08-14 
java编程思想的一个程序先来代码Java codepublic class RandomBounds {static void usage() {System.out.p

java编程思想的一个程序
先来代码

Java code
public class RandomBounds {    static void usage() {        System.out.println("Usage: \n\t" + "RandomBounds lower\n\tRandomBounds upper");        System.exit(1);    }    public static void main(String[] args) {        if(args.length != 1)            usage();        if(args[0].equals("lower")) {            while(Math.random() != 0.0)                ;    //Keep trying            System.out.println("Produced 0.0!");        }        else if(args[0].equals("upper")) {            while(Math.random() != 1.0)                ;  //keep trying            System.out.println("Produced 1.0!");        }    }}


if(args.length != 1) --------------这args是从哪来的呀!?(String[] args) 什么意思!
另外说这个程序是展示Random()函数的范围[0,1) , 怎么没看懂!

显示结果

usage:
  RandomBounds lower
  RandomBounds upper


[解决办法]
String[] args是main方法的参数,在命令行输入java xxx时执行时,会将命令行各字符串作为参数存储在数组args中,在main中则可以通过这个数组取得输入的各参数。
[解决办法]
这个args就是指的输入的参数 java class类名 参数1 参数2 参数3 ... 也可以没有参数。
另外说这个程序是展示Random()函数的范围[0,1);
if(args[0].equals("lower")) {
while(Math.random() != 0.0)
; //Keep trying
System.out.println("Produced 0.0!");
}
如果参数1是lower。 while(Math.random() != 0.0);循环直到产生0 停止循环打印 Produced 0.0!
如果参数1是upper。 while(Math.random() != 0.0);循环直到产生1 停止循环打印 Produced 1.0!但是你会发现是个循环,打印不出来。
[解决办法]
楼上两位正解
[解决办法]
Math.random()本来产生的随即数就时0~1之间的啊!你只不过用0.0和1.0控制循环退出而已。。。貌似时死循环,印象中Math.random()产的值达不到极端。。

热点排行