【发布时间】:2015-02-21 01:52:20
【问题描述】:
如何创建一个包含整数数组的方法,然后在从主类调用该方法时允许该特定方法打印该数组的所有元素?
这是我做的一个程序作为例子:
我试图找到int 输入的所有可能因素。我使用了一种名为generateFactors() 的方法来存储一个数字的所有可能因子,但由于某种原因我无法打印数组元素。在toString()方法中,有错误说void type not allowed here!
public class FactorNumbers {
private int number;
public FactorNumbers(int number) {
this.number = number;
}
public int getNumber() {
return number;
}
public void setNumber(int number) {
this.number = number;
}
public void generateFactors() {
int[] factors = new int[number];
for (int i = 0; i < number; i++) {
if ((i + 1 % number) == 0) {
factors[i] = i;
System.out.println("Factor= " + i);
} else {
factors[i] = 0;
}
}
for (int i = 0; i < number; i++) {
System.out.println(factors[i] + "");
}
}
@Override
public String toString() {
return "The factors of " + number + "are: " + generateFactors();
}
}
【问题讨论】:
-
toString 方法中不能有 generateFactors() ,除非它实际上返回一个字符串。
-
您可以将整数列表作为类的成员变量。
-
generateFacors()函数不返回任何内容。而不是打印出generateFactors()函数中的数字,而是将这些数字添加到某种列表中并返回它而不是void。 -
将
generateFactors方法设为String返回类型,然后使用java.util.Arrays.toString返回数组的值。
标签: java arrays methods tostring void