感谢您从初学者那里阅读这个问题。
我尝试在命令上运行此代码:
public class a{
public static void main(String[] args){
String[] s = args;
System.out.println(s);
}
}
以及以下输入:" java a this is string"
给了我:
" [Ljava.lang.String; @ 65d4ab0e"作为输出。
我该怎么做才能得到"这是字符串"作为输出?
答案 0 :(得分:1)
您正在打印数组对象本身,而不是数组的内容。
哈希码值[Ljava.lang.String;@65d4ab0e
表示s是一个数组,并且它具有String值。前导[
表示,您打印的对象是一个数组。
public class a{
public static void main(String[] args){
String[] s = args;
System.out.println(Arrays.toString(s));
}
}
答案 1 :(得分:1)
使用Arrays.toString(s)
查看http://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html#toString(java.lang.Object[])