日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【java基础】map的基本使用与字符串中每个字符出现的次数统计

發布時間:2025/5/22 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【java基础】map的基本使用与字符串中每个字符出现的次数统计 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Map集合概述和特點

Map集合概述

  • interface Map<K,V> K:鍵的類型;V:值的類型

Map集合的特點

  • 鍵值對映射關系
  • 一個鍵對應一個值
  • 鍵不能重復,值可以重復
  • 元素存取無序

Map集合的基本使用

public class MapDemo01 {public static void main(String[] args) {//創建集合對象Map<String,String> map = new HashMap<String,String>();//V put(K key, V value) 將指定的值與該映射中的指定鍵相關聯map.put("趙麗穎","18");map.put("迪麗熱巴","28");//輸出集合對象System.out.println(map);}}

Map集合的基本功能

方法名說明
V put(K key,V value)添加元素
V remove(Object key)根據鍵刪除鍵值對元素
void clear()移除所有的鍵值對元素
boolean containsKey(Object key)判斷集合是否包含指定的鍵
boolean containsValue(Object value)判斷集合是否包含指定的值
boolean isEmpty()判斷集合是否為空
int size()集合的長度,也就是集合中鍵值對的個數
public class MapDemo02 {public static void main(String[] args) {//創建集合對象Map<String,String> map = new HashMap<String,String>();//V put(K key,V value):添加元素map.put("趙麗穎","18");map.put("迪麗熱巴","28");//V remove(Object key):根據鍵刪除鍵值對元素// System.out.println(map.remove("迪麗熱巴"));//void clear():移除所有的鍵值對元素// map.clear();//boolean containsKey(Object key):判斷集合是否包含指定的鍵// System.out.println(map.containsKey("趙麗穎"));// System.out.println(map.containsKey("德瑪西亞"));//boolean isEmpty():判斷集合是否為空// System.out.println(map.isEmpty());//int size():集合的長度,也就是集合中鍵值對的個數System.out.println(map.size());//輸出集合對象System.out.println(map);}}

Map集合的獲取功能

方法名說明
V get(Object key)根據鍵獲取值
Set keySet()獲取所有鍵的集合
Collection values()獲取所有值的集合
Set<Map.Entry<K,V>> entrySet()獲取所有鍵值對對象的集合
public class MapDemo03 {public static void main(String[] args) {//創建集合對象Map<String, String> map = new HashMap<String, String>();//添加元素map.put("趙麗穎","18");map.put("迪麗熱巴","28");//V get(Object key):根據鍵獲取值// System.out.println(map.get("趙麗穎"));//Set<K> keySet():獲取所有鍵的集合// Set<String> keySet = map.keySet();// for(String key : keySet) {// System.out.println(key);// }//Collection<V> values():獲取所有值的集合Collection<String> values = map.values();for(String value : values) {System.out.println(value);}}}

Map集合的遍歷(方式1)

* 步驟分析* 獲取所有鍵的集合。用keySet()方法實現* 遍歷鍵的集合,獲取到每一個鍵。用增強for實現 * 根據鍵去找值。用get(Object key)方法實現* 代碼實現public class MapDemo01 {public static void main(String[] args) {//創建集合對象Map<String, String> map = new HashMap<String, String>();//添加元素map.put("趙麗穎","18");map.put("迪麗熱巴","28");//獲取所有鍵的集合。用keySet()方法實現Set<String> keySet = map.keySet();//遍歷鍵的集合,獲取到每一個鍵。用增強for實現for (String key : keySet) {//根據鍵去找值。用get(Object key)方法實現String value = map.get(key);System.out.println(key + "," + value);}}}

Map集合的遍歷(方式2)

* 步驟分析* 獲取所有鍵值對對象的集合* Set<Map.Entry<K,V>> entrySet():獲取所有鍵值對對象的集合* 遍歷鍵值對對象的集合,得到每一個鍵值對對象* 用增強for實現,得到每一個Map.Entry* 根據鍵值對對象獲取鍵和值*getKey()得到鍵*getValue()得到值* 代碼實現public class MapDemo02 {public static void main(String[] args) {//創建集合對象Map<String, String> map = new HashMap<String, String>();//添加元素map.put("趙麗穎","18");map.put("迪麗熱巴","28");//獲取所有鍵值對對象的集合Set<Map.Entry<String, String>> entrySet = map.entrySet();//遍歷鍵值對對象的集合,得到每一個鍵值對對象for (Map.Entry<String, String> me : entrySet) {//根據鍵值對對象獲取鍵和值String key = me.getKey();String value = me.getValue();System.out.println(key + "," + value);}}}

統計字符串中每個字符出現的次數

* 需求* 鍵盤錄入一個字符串,要求統計字符串中每個字符串出現的次數。* 舉例:鍵盤錄入“aababcabcdabcde” 在控制臺輸出:“a(5)b(4)c(3)d(2)e(1)* 代碼實現 public class HashMapDemo {public static void main(String[] args) {//鍵盤錄入一個字符串Scanner sc = new Scanner(System.in);System.out.println("請輸入一個字符串:");String line = sc.nextLine();//創建HashMap集合,鍵是Character,值是IntegerTreeMap<Character, Integer> wy = new TreeMap<Character, Integer>();//遍歷字符串,得到每一個字符for (int i = 0; i < line.length(); i++) {char key = line.charAt(i);//拿得到的每一個字符作為鍵到HashMap集合中去找對應的值,看其返回值Integer value = wy.get(key);if (value == null) {//如果返回值是null:說明該字符在HashMap集合中不存在,就把該字符作為鍵,1作為值存儲wy.put(key,1);} else {//如果返回值不是null:說明該字符在HashMap集合中存在,把該值加1,然后重新存儲該字符和對應的值value++;wy.put(key,value);}}//遍歷HashMap集合,得到鍵和值,按照要求進行拼接StringBuilder sb = new StringBuilder();Set<Character> keySet = wy.keySet();for(Character key : keySet) {Integer value = wy.get(key);sb.append(key).append("(").append(value).append(")");}String result = sb.toString();//輸出結果System.out.println(result);} }

總結

以上是生活随笔為你收集整理的【java基础】map的基本使用与字符串中每个字符出现的次数统计的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。