求助,17的args.length是否会编译或运行时错误?

jy503160 2010-06-01 06:03:20
public class Yippee {
16. public static void main(String [] args) {
17. for(int x = 1; x < args.length; x++) {
18. System.out.print(args[x] +" ");
19. }
20. }
21. }
and two separate command line invocations:
java Yippee
java Yippee 1234
What is the result?

String [] args----似乎说是没有实例化,还是什么的。哪位给我分析下。
...全文
112 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jy503160 2010-06-03
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 gesanri 的回复:]
显然没有输出啊,for(int x = 1; x < args.length; x++) 先执行x = 1,完后判断x < args.length,此时args.length = 1, 1 < 1条件不满足,不会执行循环体,程序就直接结束了

注意args.length是为1,不是为4,参数是一个字符串数组,数组的长度为1,值为"1234",所以循环体和x++都没有执行
[/Quote]

那如果输入:java Yippee 1 2 3 4
这样参数是否是一个数组,长度就为4了?
那么,是先执行循环体还是先执行x++?
gesanri 2010-06-02
  • 打赏
  • 举报
回复
显然没有输出啊,for(int x = 1; x < args.length; x++) 先执行x = 1,完后判断x < args.length,此时args.length = 1, 1 < 1条件不满足,不会执行循环体,程序就直接结束了

注意args.length是为1,不是为4,参数是一个字符串数组,数组的长度为1,值为"1234",所以循环体和x++都没有执行
jy503160 2010-06-02
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 leehomwong 的回复:]
String[] args 这个字符串数组是保存运行main函数时输入的参数的
例如main函数所在的类名为test,那么你在cmd运行java test a b c 时
args[0] = a ,args[1]=b, args[2]=c
你就可以在你的程序中调用你输入的这些变量了。
[/Quote]

那这个题目的答案是多少?
给出的答案是
No output is produced.
234
for循环for(int x = 1; x < args.length; x++) {
System.out.print(args[x] +" ");
当输入:java Yippee 1234
这个语句中,第一次循环,args.length=4,条件成立。是先执行x++还是先执行System语句?
sonny0129 2010-06-01
  • 打赏
  • 举报
回复
args.length是参数的个数
java yippee 1234 只有一个参数个数,
x=1;x<1 出错了
kuruby 2010-06-01
  • 打赏
  • 举报
回复
for(int x = 1; x < args.length; x++)->for(int x = 0; x < args.length; x++)
作用是输出命令行所带的参数。
happysmhzp 2010-06-01
  • 打赏
  • 举报
回复
java Yippee后面要跟参数的
24K純帥 2010-06-01
  • 打赏
  • 举报
回复
String[] args 这个字符串数组是保存运行main函数时输入的参数的
例如main函数所在的类名为test,那么你在cmd运行java test a b c 时
args[0] = a ,args[1]=b, args[2]=c
你就可以在你的程序中调用你输入的这些变量了。

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧