我希望有人能够通过get方法返回数组的正确方法给我一些帮助。
public void setScores (int Scores[])
{
this.scores = Scores;
}
我可以设置Array没问题,我无法想出一种方法来返回要打印的数组。
public int [] getScores ()
{
for (int index =0; index <5; index ++)
{
System.out.println("Score"+x +"is" +this.scores[index]);
x=x+1;
}
return scores;
}
我知道上面的代码将不工作,因为我只是返回整个数组,而不是其中的元素。
我要做的是,将数组的每个元素显示到控制台:
System.out.println( "Player "+playName+"'s Scores are: \n"+Players.getScores());
我是否需要在上面的部分使用for循环?
感谢帮助, 感谢
答案 0 :(得分:2)
从需要结果的位置开始,您可以调用get方法,然后遍历数组,如
int[] result = getScores();
System.out.println("Player "+playName+"'s Scores are:")
for(int n: result){
System.out.println(n);
}
答案 1 :(得分:0)
不是在getScores中有一个打印循环,而是在打印数组的任何方法中放置一个for循环,并让它构造一个包含这些元素的字符串。
返回数组
public int [] getScores ()
{
return scores;
}
主要方法
int[] array = obj.getScores();
StringBuilder elements = new StringBuilder();
for(int i = 0;i < array.length -1;i++){
elements.append(array[i] +",");
}
elements.append(array[array.length-1]);
System.out.println( "Player "+playName+"'s Scores are: \n"+elements.toString());
答案 2 :(得分:0)
是的,您必须使用for
或while
循环将数组的每个元素显示到控制台。
类似的东西:
int[] score = getScores();
for(int i = 0; i < score.length; i++){
System.out.println(score[i]);
}
会起作用。
答案 3 :(得分:0)
您想要显示分数或返回分数。如果您只想显示,则无需返回分数。
您可以简单地将数组放在println方法中。它会自动调用toString()方法。
System.out.println(“玩家得分为:”+ this.scores);
虽然它适用于Wrapper类,但您也可以使用每个循环,但由于autoboxing属性,转换将会很谨慎。