【发布时间】:2013-04-22 23:55:52
【问题描述】:
我是 Java 新手,也是计算机科学的新学生。
我有一个问题:如何在包含对象的数组中找到最常用的名称 有关于旅行的信息?
数组中有对象,每个对象都包含有关旅行的信息,并且有指南的名称。 按逻辑,我知道我需要首先获取所有指南名称,然后计算每个名称, 然后比较每个名称的计数器,找到最大的计数器,并返回指南 包含最大计数器.. 但我该怎么做呢?
有什么建议吗?
【问题讨论】:
我是 Java 新手,也是计算机科学的新学生。
我有一个问题:如何在包含对象的数组中找到最常用的名称 有关于旅行的信息?
数组中有对象,每个对象都包含有关旅行的信息,并且有指南的名称。 按逻辑,我知道我需要首先获取所有指南名称,然后计算每个名称, 然后比较每个名称的计数器,找到最大的计数器,并返回指南 包含最大计数器.. 但我该怎么做呢?
有什么建议吗?
【问题讨论】:
有很多方法可以做到这一点。你的方法是正确的。以下是有关如何在 java 中完成您提到的事情的更多细节。
"获取所有指南名称" 这意味着您必须在数组上编写一个循环,并以某种数据结构收集名称。使用哪种数据结构取决于您想要做什么(下面会详细介绍)。
"计算每个名字" 啊哈,因此您收集名称的数据结构也应该能够存储每个名称的计数。 Java 中最通用的数据结构之一是 Map。在这种情况下,您可以使用 Map 来存储每个名称的计数。
"比较计数器", "找到最大值" 您可以在将名称收集到地图后执行此操作,但在循环中执行此操作可能更简单。当您遍历数组中的项目并获取名称以更新计数时,您还可以跟踪“迄今为止的最大计数”和与之相关的名称。每当您获得一个新计数大于此最大值的名称时,您就会有一个新的最大值和相应的名称(至少在您找到更大的名称之前)。然后在循环结束时,您将获得所需的名称。
【讨论】: