目的:了解Map的containsKey的是用以及Map的遍历:
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
/**
* 从一数组中找出出现最多的字符 引发对Map的总结 1.containsKey(Object key)方法的使用 2.Map的遍历操作
*/
public class MapTest {
public static void findSameNum(String[] arr) {
Map<String, Integer> map = new HashMap<String, Integer>();
for (int i = 0; i < arr.length; i++) {
/*
* map.containsKey(Object findKey)
* 方法介绍: 如果此映射包含指定键的映射关系,则返回 true。
* 说明:map已经包含了findKey的映射关系 则返回true 否则返回false
*/
if (map.containsKey(arr[i])) {
int tempCount = map.get(arr[i]);
map.put(arr[i], ++tempCount);
} else {
map.put(arr[i], 1);
}
}
/*
* Map的遍历操作 map.entrySet().iterator(); map.getKey() map.getValue()
*/
Iterator<Entry<String, Integer>> it = map.entrySet().iterator();
int count = 0; // 全局记录某数字出现的最多的次数
String maxCountWord = arr[0]; // 默认出现最多的字符是第一个
while (it.hasNext()) {
Entry<String, Integer> en = it.next();
int tempCount = en.getValue();
if (tempCount > count) {
count = tempCount;
maxCountWord = en.getKey();
}
}
System.out.println("最终胜出:" + maxCountWord + "出现" + count + "次!");
}
public static void main(String[] args) {
String[] arr = { "hello", "world", "a", "k", "a", "bf", "aa", "z", "a",
"1", "c" };
MapTest.findSameNum(arr);
}
}
参考:http://www.iteye.com/topic/777508
分享到:
相关推荐
查找数组中重复元素的频率,我们需要遍历数组,记录每个元素出现的次数,然后找出出现次数最多的元素。 在`main.js`文件中,可能包含以下代码实现这个功能: ```javascript function findMostFrequent(arr) { let...
在本问题中,我们关注的是如何找出一个正型数组中出现次数最多的前三个数。这涉及到数据统计、排序以及可能的哈希映射等技术。我们将探讨如何通过对象数组和自定义比较器来实现这一目标。 首先,创建一个对象数组,...
接下来,我们需要找出数组中出现次数最多的元素。C++标准库提供了`std::unordered_map`或`std::map`容器来实现这个功能。我们可以遍历数组,用哈希表记录每个元素出现的次数,然后找出出现次数最多的那个。 ```cpp ...
这个问题可以通过多种方法解决,例如使用哈希表(HashMap在Java中)或者数组来统计每个字符出现的次数,然后找出出现次数最多的那个。接下来我们将详细探讨这两种方法。 1. **哈希表法**: - 初始化一个哈希表,键...
首先,我们可以使用JavaScript的`reduce()`方法来找出数组中的重复元素。`reduce()`方法对数组中的每个元素执行一个提供的函数,将其结果累积到单个返回值中。在这个过程中,我们可以创建一个对象,用数组元素作为键...
int[] arr = { 1, 2, 2, 3, 3, 4, 4, 4, 1, 5, 6, 6, 6 }; 两种不同方式(使用map和list两种方式)获得一下输出结果 数组和list 可以使用相同的方法,自己测试可以 控制台输出 ...数组中唯一的元素是:5
Java找出数组中重复的数字 本文主要是介绍了Java语言中如何找出数组中重复的数字。该问题是剑指offer中的经典面试题,旨在考察程序员的编程能力和算法思维。 问题描述 在一个长度为n的数组里的所有数字都在0~n-1...
array_chunk -- 将一个数组分割成多个 array_combine -- 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值 array_count_values -- 统计数组中所有的值出现的次数 array_diff_assoc -- 带索引检查...
总结来说,"sql-map-2.dtd"和"sql-map-config-2.dtd"是Ibatis 2.x版本中非常关键的组件,它们为XML配置文件提供了结构化规则,使得开发人员能够编写出合法且易于维护的SQL映射文件和全局配置文件。理解并正确使用...
6. **数组去重**:因为我们要找的是交集,所以哈希表中可能存在重复的元素,需要在构建结果数组时去除重复项,只保留出现次数。 7. **数组排序**:最后,我们需要对结果数组进行排序,确保返回的结果满足非递减顺序...
为了找出两个数组中的相同元素,我们可以遍历其中一个数组,然后使用`contains()`方法检查该元素是否存在于另一个数组中。这是一种简单的线性搜索,效率较低,但易于理解。示例代码如下: ```java int[] array1 = {...
例如,`shape`属性返回数组的维度,`size`返回元素的总数,`dtype`表示数组中元素的数据类型。方法如`reshape()`用于改变数组形状,`transpose()`进行转置,`flatten()`将多维数组拉平为一维。此外,还有`astype()`...
二维数组,也被称为矩阵,是数组的一种扩展,它在内存中以表格形式存储数据,每个元素都有两个索引,通常用行和列来标识。在C++、Java、Python等编程语言中,二维数组常用于处理表格数据,如图像处理、游戏地图、...
这篇文章将深入探讨这两个概念,以及如何在实际开发中使用它们。 首先,Array是JavaScript中最基础的数据结构之一,它允许我们存储一组有序的元素。数组支持索引访问,这意味着我们可以通过索引来获取或修改数组中...
该方法接受一个整型数组`array`和一个整数`max`(表示数组中可能的最大元素值)作为参数,返回一个Map对象,其中包含了重复次数最多的元素值(value)及其重复次数(maxCount)。 首先,创建一个HashMap类型的`...
在JavaScript中,数组去重是一个常见的需求,旨在从数组中删除重复的元素,仅保留唯一的元素。本文介绍了多种js数组去重的方法,并按照ES5和ES6的标准进行了区分。以下是对这些方法的知识点总结。 1. ES5 实现方法...
2. 使用`enumerate`函数遍历数组`nums`,它返回当前元素`num`和它的索引`i`。 3. 对于每个元素,计算目标值`target`与当前元素`num`的差值`complement`。 4. 检查`complement`是否已经在哈希表`hash_map`中。如果在...
sql-map-config-2.dtd