记录字符串中字符出现的次数

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

public class Test1 {

public static void main(String[] args) {
// 获取一个字符串中重复字母的个数,并依次打印出来
String string = "ababcde";
Map<Character ,Integer> map = new HashMap<Character ,Integer>();
//遍历字符长度
for(int i = 0 ; i < string.length() ; i ++){
//如果字符已经存在,在value值加一
if(map.containsKey(string.charAt(i)))
map.put(string.charAt(i), map.get(string.charAt(i)) + 1);
else
map.put(string.charAt(i), 1);
}
//遍历map集合,并打印
// Iterator iterator =map.entrySet().iterator() ;
// while(iterator.hasNext()){
// System.out.println(iterator.next());
// }
Set set = map.keySet();
for(Object sets : set){
System.out.println("字符 " + sets+ " 重复的次数 : " + map.get(sets));
}
}
}

时间: 2024-10-08 18:04:51

记录字符串中字符出现的次数的相关文章

技巧之C#统计字符串中字符出现的次数(转)

方法1.自定义类 class CharNum { private char c; private int num; public char C { get { return c; } } public int Num { get { return num; } set { num = value; } } public CharNum(char ch) { this.c = ch; this.num = 1; } } static void Main(string[] args) { /* */

java怎么实现统计一个字符串中字符出现的次数

问题:假设字符串仅仅保护a-z 的字母,java怎么实现统计一个字符串中字符出现的次数?而且,如果压缩后的字符数不小于原始字符数,则返回. 处理逻辑:首先拆分字符串,以拆分出的字符为key,以字符出现次数为value,存入Map中. 源码如下: 1 import java.util.HashMap; 2 import java.util.Iterator; 3 import java.util.Map; 4 5 public class TestCompress { 6 7 public sta

Map集合计算字符串中字符出现的次数

练习: 计算一个字符串中每个字符出现次数 分析: 1.使用Scanner获取用户输入的字符串 2.创建Map集合,key是字符串中的字符,value是字符的个数 3.遍历字符串,获取每一个字符 4.使用获取到的字符,去Map集合判断key是否存在 key存在: 通过字符(key),获取value(字符个数) value++ put(key,value)把新的value存储到Map集合中 key不存在: put(key,1) 5.遍历Map集合,输出结果 代码实现 package demo03;

任意输入一串字符串,求该字符串中字符的出现次数并打印出来,如输入“bcaba”输出:b 2 c 1 a 2

前言:其实我还是有点不懂,有点郁闷了,算了直接把代码放上去把. 方法一: Scanner input=new Scanner(System.in); System.out.println("请输入一个字符"); String str=input.next(); char[] strChar=str.toCharArray(); //声明集合,把之存在集合中 Map<Character,Integer> map=new HashMap<>(); for(int i

统计字符串中字符出现的次数

var a = {}; var str = 'gouod'.split(""); str.forEach(function (v, i) { a[v] = a[v] == undefined ? 1 : a[v] + 1; }) console.info(a)

统计字符串中字符出现的次数(||和&amp;&amp;的区别)

var str = "ProsperLee"; // || 返回第一个为真的表达式的值,若全为假则返回最后一个表达式的值 // && 返回第一个为假的表达式的值,若全为真则返回最后一个表达式的值 String.prototype.charCount = function(){ var json = {}; for (var i = 0, l = this.length; i < l; i++) { json[this[i]] = json[this[i]] + 1

找出字符串中第一个出现次数最多的字符

找出字符串中第一个出现次数最多的字符 详细描述: 接口说明 原型: bool FindChar(char* pInputString, char* pChar); 输入参数: char* pInputString:字符串 输出参数(指针指向的内存区域保证有效): char* pChar:出现次数最多的字符 返回值: false 异常失败 true  输出成功 #include <iostream> #include <string.h> using namespace std; b

使用Dictionary键值对判断字符串中字符出现次数

介绍Dictionary 使用前需引入命名空间 using System.Collections.Generic Dictionary里面每一个元素都是一个键值对(由两个元素组成:键和值) 键必须是唯一的,而值不需要唯一 键和值都可以是任何类型(比如:string,int,自定义类型等) 通过一个键读取一个值的时间接近0(1) 键值对之间的偏序可以不定义 使用Dictionary 使用dictionary判断字符串中字符出现次数 var dic = new Dictionary<char, in

算法积累(字符串转换驼峰,判断一个字符串中那个字母出现次数最多,并且出现了几次)

因为算法比较烂,所以想做一下这方面的积累. 尽量能够每天学习一个新算法吧.(不过估计很悬) 好吧,今天第一个是字符串转换驼峰 直接上代码 var str = 'toupper-case'; var arr = str.split('-'); //toupper,case for (var i = 1; i < arr.length; i++) { //把除了第一个数组后面的数组的第一个值设置为大写然后大写字母和去掉第一个字符的剩下的字符进行拼合 arr[i] = arr[i].charAt(0)