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

如何打印LinkedHashMap中的内容?附相关Java代码示例

嘿,我来帮你搞定打印LinkedHashMap里总统信息的事儿!你的presidents集合存着总统编号和对应的President对象,下面给你几种实用的打印方法,适配你的代码场景:

打印LinkedHashMap内容的几种方法

1. 遍历EntrySet(最推荐,同时拿键和值)

这种方式能直接获取到每个键值对的编号(key)和总统对象(value),是最常用的遍历方式:

// 把这段代码放在你需要打印的位置,比如addPresident之后
for (Map.Entry<String, President> entry : presidents.entrySet()) {
    String presidentNumber = entry.getKey();
    President president = entry.getValue();
    // 这里假设你的President类有getFirstName()和getLastName()方法,根据实际属性调整
    System.out.printf("总统编号:%s,姓名:%s %s%n", 
        presidentNumber, president.getFirstName(), president.getLastName());
}

2. 遍历KeySet,通过键取值

如果你想先拿到所有总统编号,再逐个获取对应的对象,可以用这种方式:

for (String number : presidents.keySet()) {
    President p = presidents.get(number);
    System.out.println("编号:" + number + " | 总统:" + p.getFirstName() + " " + p.getLastName());
}

3. Java 8+ 简化写法:Lambda forEach

如果你的项目用的是Java 8及以上版本,用Lambda表达式能让代码更简洁:

presidents.forEach((number, president) -> {
    System.out.println(String.format("编号[%s]:%s %s", 
        number, president.getFirstName(), president.getLastName()));
});

额外小技巧:重写toString()快速打印对象

如果你想直接打印整个President对象的信息,可以在President类里重写toString()方法,比如:

// 在President类中添加这段代码
@Override
public String toString() {
    return "President{" +
            "姓氏='" + lastName + '\'' +
            ", 名字='" + firstName + '\'' +
            '}';
}

之后你就可以直接打印集合里的value,或者整个键值对:

// 打印所有总统对象
for (President president : presidents.values()) {
    System.out.println(president); // 会自动调用重写后的toString()
}

内容的提问来源于stack exchange,提问作者Byron R. Boydstun Jr.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 07:08:10