您的位置:程序门 -> java -> j2se / 基础类



谁来帮我看看这条程序啊?


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


谁来帮我看看这条程序啊?
发表于:2007-06-26 09:50:49 楼主
import   java.util.*;

public   class   flowdemo{
    public   static   void   main(string[]   arges){
        int   ipara1,ipara2,iend;
        if(arges.length!=3)
        {
            system.out.println( "use   :java   flowdome   parameter1   parameter2   circle ");
            system.out.println( "parameter1   :   比较条件1,数字类型 ");
            system.out.println( "parameter2   :   比较条件2,数字类型 ");
            system.out.println( "circle   :循环次数 ");
            system.out.println( "ego:java   flowdome   1   2   5 ");
            return;
        }else{
            ipara1   =   integer.parseint(arges[0]);
            ipara2   =   integer.parseint(arges[1]);
            iend   =   integer.parseint(arges[2]);
        }
        //if语句
        if(ipara2> ipara1)
        {
            system.out.println( "if   条件满足! ");
            system.out.println( "第2个数比第1个数大! ");
        }
        else
        {
            system.out.println( "if   条件不满足! ");
            system.out.println( "第2个数比第1个数小! ");
        }
        //for循环操作
        for(int   i=0;i <iend;i++)
        {
            system.out.println( "这是for   第 "+i+ "次循环 ");
        }
        //while循环操作
        int   i=0;
        while(i <iend)
        {
            system.out.println( "这是while   第 "+i+ "次循环 ");
            i++;
        }
        //do-while循环操作
        int   j=0;
        do
        {
            system.out.println( "这是do-while   第 "+j+ "次循环 ");
            j++;
        }while(j <iend);
    }
}

程序运行结果是:
c:\study> java   flowdemo
use   :java   flowdome   parameter1   parameter2   circle
parameter1   :   比较条件1,数字类型
parameter2   :   比较条件2,数字类型
circle   :循环次数
ego:java   flowdome   1   2   5

疑问:string   args[]数组不是接收运行时的参数吗?为什么只运行java   flowdemo就有结果了,args这个数组的数据是谁传给它的?
发表于:2007-06-26 10:06:271楼 得分:0
args接收的是命令行参数,java虚拟机传的
发表于:2007-06-26 10:06:402楼 得分:0
因为你没有加参数,所以下面的代码被执行。相当于dos程序的/?,就是一个帮助,告诉你应该加什么参数。
if(arges.length!=3)
{
system.out.println( "use   :java   flowdome   parameter1   parameter2   circle ");
system.out.println( "parameter1   :   比较条件1,数字类型 ");
system.out.println( "parameter2   :   比较条件2,数字类型 ");
system.out.println( "circle   :循环次数 ");
system.out.println( "ego:java   flowdome   1   2   5 ");
return;
发表于:2007-06-26 10:07:303楼 得分:0
按你的运行
args[0]= "c:\study> java "
args[1]= "flowdemo "
之后才是你要传递进去的参数
发表于:2007-06-26 10:45:494楼 得分:0
john_sheep说的话我明白了。因为运行该程序时没有输入参数,所以执行:
if(arges.length!=3)
{
system.out.println( "use   :java   flowdome   parameter1   parameter2   circle ");
system.out.println( "parameter1   :   比较条件1,数字类型 ");
system.out.println( "parameter2   :   比较条件2,数字类型 ");
system.out.println( "circle   :循环次数 ");
system.out.println( "ego:java   flowdome   1   2   5 ");
return;

我这样运行:java   flowdemo   1   2   3
程序运行结果为:
if   条件满足!
第2个数比第1个数大!
这是for   第0次循环
这是for   第1次循环
这是for   第2次循环
这是while   第0次循环
这是while   第1次循环
这是while   第2次循环
这是do-while   第0次循环
这是do-while   第1次循环
这是do-while   第2次循环

我明白了。

还有一个疑问:skywoodsky()   说的话:

按你的运行
args[0]= "c:\study> java "
args[1]= "flowdemo "
之后才是你要传递进去的参数

是什么意思?
发表于:2007-06-26 13:33:005楼 得分:0
以你的例子说明
java   flowdemo   1   2   3

args[0]=1
args[1]=2
args[2]=3

个人认为skywoodsky()解释错了
发表于:2007-06-26 14:49:056楼 得分:0
args里应该只保存了参数
发表于:2007-06-26 16:24:007楼 得分:0
建议大家去看书,搞清楚到底命令行参数是怎么传的
发表于:2007-06-26 16:47:478楼 得分:0
我把别的地方的文章转过来
搂主看看
********************
有时你想在运行程序时将信息传递到一个程序中。这通过将命令行参数(command-line   arguments   )传递给main()   来实现。命令行参数是程序执行时在命令行中紧跟在程序名后的信息。在java   程序中访问命令行参数是相当容易的——它们作为字符串存储在传递给main()   的string   数组中。例如,下面的程序显示了调用的所有的命令行参数:

//   display   all   command-line   arguments.
class   commandline   {
        public   static   void   main(string   args[])   {
                for   (   int   i   =   0;   i   <   args.length;   i++   )
                        system.out.println( "args[ "   +   i   +   "]:   "   +   args[i]);
        }
}  
尝试执行这个程序,命令如下所示:
java   commandline   this   is   a   test   100   -1  
执行后,你会看到如下输出:
args[0]:   this
args[1]:   is
args[2]:   a
args[3]:   test
args[4]:   100
args[5]:   -1  
注意:所有的命令行参数都是以字符串的形式传递的。


快速检索

最新资讯
热门点击