You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java中如何让自定义MyArray类对象可直接通过System.out.println打印

解决方案

Java的System.out.println()方法接收对象参数时,会自动调用该对象的toString()方法获取要输出的字符串内容,默认的toString()返回格式为类名@哈希值,不符合你的需求,你只需要在MyArray类中重写toString()方法即可,另外注意测试代码中调用的静态实例计数器名为InstCount,你当前定义的变量名是Count,需要同步修改避免编译错误。

修改后的核心代码如下

import java.util.List;
import java.util.ArrayList;

class MyArray
{
    // 修改变量名匹配测试要求的InstCount
    public static int InstCount = 0;
    private List<Integer> numbers = new ArrayList<Integer>();

    MyArray()
    {
        InstCount++;
    }

    // 重写Object类的toString方法,直接返回内部ArrayList的格式化字符串
    @Override
    public String toString() {
        return numbers.toString();
    }

    // 其余你已经实现的方法保留即可,以下是补充的示例方法供参考
    public int size() {
        return numbers.size();
    }

    public boolean isEmpty() {
        return numbers.isEmpty();
    }

    public void append(int num) {
        numbers.add(num);
    }

    public int getLast() {
        return numbers.get(numbers.size() - 1);
    }

    public int getFirst() {
        return numbers.get(0);
    }

    public void appendAll(List<Integer> list) {
        numbers.addAll(list);
    }
}

修改完成后直接调用System.out.println(myarray1)就可以输出你需要的数组格式内容,完全符合测试要求。

内容的提问来源于stack exchange,提问作者Belushi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 22:15:03