java学习中的一些小算法抽取之字节数量统计算法

版权声明:LiuK°版权所有 https://blog.csdn.net/weixin_43401946/article/details/83042201

字节数量统计算法

今天在整理一些算法的代码,看到了许多以前学习java时抽取的一些小算法,在平时也经常用得到,很方便,今天要分享的是字节数量统计算法,后面将简述思路和贴出代码。

算法思想:

首先我们一般得到的是字符串str,这时我们可以调用java中的toCharArray()方法获得字符串数组(char[] ch=str.toCharArray());
创建一个map集合,接着遍历这个数组,每次判断map集合中是否存在这个字节也就是key值(map.containsKey©),若已经存在,则对value进行增1操作,若没有,则以该字节为key 存入map 即:map.put(c,1).
思路很简单,利用了java中map集合的特点,代码贴在下面,有需要的可以根据自己的需求进行更改。

package cn.wxxy.algorithm01;

import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;

//字节数量统计算法
public class ByteStatisticsAlgorithm {
    public static void main(String[] args) {

        Scanner input=new Scanner(System.in);
        System.out.println("请输入字符串:");
        String str=input.next();
        ByteStatistics(str);

    }
    private static void ByteStatistics(String str) {
        char[] ch=str.toCharArray();
        Map<Character,Integer> map=new HashMap<>();
        for (char c : ch) {
            if(map.containsKey(c)){//判断map中是否存在Key值c
                map.put(c,map.get(c)+1);//如果c在Map中存在 则c所对应的Value加一
            }
            else {
                map.put(c,1);//Map中不存在c则存入map.put(c,1);
            }
        }
        System.out.println(map);
    }

}

后续会有更多的小算法或者java基础知识更新。

猜你喜欢

转载自blog.csdn.net/weixin_43401946/article/details/83042201