【发布时间】:2021-11-30 13:32:59
【问题描述】:
我是 Java 新手,昨天我的教授给我发了一个样本测试。不幸的是,我被困在了一项任务中。
任务:
编写一个名为MyArray 的类,其中包含所有必要的方法。在类实例化之后,我们想在 Main.java 中像这样使用这个类:
// comments : expected outputs
System.out.println(myarray1); // []
System.out.println(myarray1.size()); // 0
System.out.println(myarray1.isEmpty()); // true
myarray1.append(51);
myarray1.append(75);
myarray1.append(24);
System.out.println(myarray1); // [51, 75, 24]
System.out.println(myarray1.size()); // 3
int last = myarray1.getLast();
System.out.println(last); // 24
int first = myarray1.getFirst();
System.out.println(first); // 51
myarray1.appendAll(List.of(15, 95, 124));
System.out.println(myarray1); // [51, 75, 24, 15, 95, 124]
System.out.println(MyArray.InstCount); // 1 <instantiation counter>
我已经成功实现了所有必要的方法,但是我无法理解这一行:
System.out.println(myarray1); // []
如何直接打印这个对象(ArrayList)?
我做不到。我的解决方法是一种名为print() 的新方法,它会打印 myarray1 对象:
在 Main.java 中:
System.out.println(myarray1.print()); // []
在 MyArray.java 中:
import java.util.List;
import java.util.ArrayList;
class MyArray
{
public static int Count = 0;
private List<Integer> numbers = new ArrayList<Integer>();
MyArray()
{
Count++;
}
public List<Integer> print()
{
return numbers;
}
.
. // other methods...
.
}
【问题讨论】:
-
实现 toString() 方法,所以它返回一个类似 "[element1, element2, ...]" 的字符串
标签: java class object arraylist