A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© LLLLL 中级黑马   /  2015-10-9 20:33  /  3818 人查看  /  15 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1黑马币
已知如下的命令执行 java MyTest a b c 请问哪个语句是正确的()。为什么?
A. args[0] = "MyTest a b c"
B. args[0] = "MyTest"
C. args[0] = "a"
D. args[1]= ‘b‘

15 个回复

倒序浏览
应该选c吧,java MyTest执行语句,a b c 是数组形式的参数
回复 使用道具 举报
java程序有一个主方法,是这样的public static void main(String [] args)
你说的args[0]就是你用命令行编译运行java程序时,传入的第一个参数
回复 使用道具 举报
命令执行 java MyTest a b c
这句话的意思是执行MyTes类,并给main方法中(String[]  args)里面的args字符串型数组里面传递给应参数;
传递参数的规定是这样的:类名之后,以空格为分隔标识符,第一个连续的字符串存储为args[0],空格后第二个字符串为args[1]....以此内推,其中空格不算字符串内容,只作为字符串的分割标识符,字符串数组的长度由输入的元素个数决定;
args[]数组里面的元素都为字符串形式,所以首先排除D答案,然后类名为MyTest,之后的内容才会被传递到数组中,所以排除A,B答案。之后的a,b,c分别以字符串的形式存储在args数组中,一共传递了3个元素,所以args数组的长度为3。数组内的元素分别是:args[0]="a";args[1]="b";args[2]="c";
这个args数组可以在main方法中作为一个局部变量来使用的,所以你可以使用传递的值做一些操作,不过要注意传递值的内容,如果没传递数据,但是main方法中使用了args数组,将会出现空指针异常,如果使用数组内容范围超过了数组长度,会出现数组越界异常
回复 使用道具 举报
java MyTest a b c
这个命令的意思是给  MyTest 这个类的main方法传入参数abc
而abc 对应的是  public static void main(String[] args)中的 args
那么  args[0]=a  args[1]=b   args[2]=c  
回复 使用道具 举报
应该是D, args[1]='b'没有后面那个空格
回复 使用道具 举报
选C,args[] = {"a", "b", "c"}。
args是String类型,要用双引号,D是错的。
回复 使用道具 举报
选c   java MyTest 命令,运行操作,后面 写入字符串数组,通过空格来分隔, 空格 a 空格 b 空格 c  ,代表传入3个字符串
回复 使用道具 举报
C。java MyTest a b c意思是运行MyTest程序并将a b c传入数组args[]中,所以args[]= {a b c}, args[0] = "a"。
回复 使用道具 举报
选C,Java MyTest是执行语句,后面的a b c是String数组args的三个元素,而选项d中是单引号,表示是字符,不是字符串,所以选C
回复 使用道具 举报
选 c 通过命令行 测试输出下。
回复 使用道具 举报
选C 大兄弟  一个黑马币来还不  主函数中 是String[]类型的  题目中 a b c意思是传进去三个String类型的字符
args[0] = "a"
args[1] = "b"
args[2] = "c"
java MyTest a b c这句话你能看懂吧?
回复 使用道具 举报
夕风秋凉 发表于 2015-10-29 21:59
选C 大兄弟  一个黑马币来还不  主函数中 是String[]类型的  题目中 a b c意思是传进去三个String类型的字 ...

跪求黑马币  小白不容易
回复 使用道具 举报
这个题目是什么意思。。。
回复 使用道具 举报
应该选c。
回复 使用道具 举报
选C,a  b  c是要输入字符串数组args的参数
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马