[英]Passing an array from one method to another
我试图弄清楚如何将信息从一种方法传递到主要方法。 这可能很简单,我只是想念一些东西。 请帮忙 :)
public static void main(String[] args) throws IOException {
String[] name = stateName();
public static String[] stateName() throws IOException{
int numState =0;
File file = new File ("stateNames.txt");
Scanner in = new Scanner(file);
while (in.hasNextLine()){
String state = in.nextLine();
numState++;
}
String[] states = new String [numState];
Scanner reader = new Scanner(file);
for (int i= 0; i < numState; i++){
states[i] = reader.nextLine();
}
return states;
}
当我运行它时,我返回:[Ljava.lang.String; @ 18892539我在做什么错?
实际上,没有错。 这正是它应该如何工作的。
当您尝试使用System.out.println
打印数组时,您会得到提到的奇怪的神秘事物。 您可以使用解决此问题
System.out.println(Arrays.toString(name));
代替
System.out.println(name);
其他方式
String[] name = {"John", "Mike", "Jim"};
// this out put will be like this
[ John, Mike, Jim ]
System.out.prinln(Arrays.asList(name));
// this way is better for formatting. Prints:
John
Mike
Jim
for (String s : name){
System.out.println(s);
}
// or this will print out
John Mike Jim
System.out.println(Arrays.toString(name));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.