大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 在java中怎樣查找重復字符串

在java中怎樣查找重復字符串

更新時間:2020-10-30 10:54:22 來源:動力節點 瀏覽1720次

在一段java編程代碼中,字符串是不可缺少的一個要素,屬于java中的基礎知識,字符串不僅在java面試題中會出現,在編寫代碼時更要掌握怎樣使用字符串。在前面我們也學習過關于字符串截取的知識,你應該有所掌握吧、格式化字符串也是比較重要的內容,今天我們學習怎樣查找重復字符串,在實際的工作中也會遇到查找重復字符串的需要。

image.png

先看一個在java中查找重復字符串的例子,為大家提供一個思路:先循環整個字符串,用到了map的鍵值對,判斷map的key 是否存在,map不存在就賦值字符當map的key ,value 為1。map.put(s.charAt(i),1);當map存在時,就在當前value值之上+1操作,map.put(s.charAt(i),map.get(s.charAt(i))+1);

image.png

結果是{a=3, b=3, c=3, d=2, t=3}。注意:map中泛型 Character 為char的包裝類,也可以使用Object代替。


關于解決在java中怎樣查找重復字符串這個問題的標準方法是從String中獲取字符數組,遍歷它并構建一個包含字符及其計數的Map。然后遍歷該Map并打印出現不止一次的字符。所以你實際上需要兩個循環來完成這項工作,第一個循環來構建地圖,第二個循環來打印字符和計數。

查看下面的例子,只有一個名為printDuplicateCharacters()的靜態方法,它可以同時執行這兩項工作。我們首先通過調用toCharArray()從String中獲取字符數組。接下來使用HashMap來存儲字符及其計數。用containsKey()方法來檢查密鑰是否已經存在,如果已經存在,我們通過調用get()方法從HashMap獲取舊計數,并在將其遞增1之后將其存儲回來。代碼如下:


import java.util.HashMap;

import java.util.Map;

import java.util.Scanner;

import java.util.Set;

/**

* Java Program to find duplicate characters in String.

*

*

* @author http://java67.blogspot.com

*/

public class FindDuplicateCharacters{

    public static void main(String args[]) {

        printDuplicateCharacters("Programming");

        printDuplicateCharacters("Combination");

        printDuplicateCharacters("Java");

    }

    /*

     * Find all duplicate characters in a String and print each of them.

     */

    public static void printDuplicateCharacters(String word) {

        char[] characters = word.toCharArray();

        // build HashMap with character and number of times they appear in String

        Map<Character, Integer> charMap = new HashMap<Character, Integer>();

        for (Character ch : characters) {

            if (charMap.containsKey(ch)) {

                charMap.put(ch, charMap.get(ch) + 1);

            } else {

                charMap.put(ch, 1);

            }

        }

        // Iterate through HashMap to print all duplicate characters of String

        Set<Map.Entry<Character, Integer>> entrySet = charMap.entrySet();

        System.out.printf("List of duplicate characters in String '%s' %n", word);

        for (Map.Entry<Character, Integer> entry : entrySet) {

            if (entry.getValue() > 1) {

                System.out.printf("%s : %d %n", entry.getKey(), entry.getValue());

            }

        }

    }

}


如何在字符串JavaOnce中找到重復的字符?我們用每個字符和計數構建Map,接下來的任務是循環遍歷Map并檢查每個條目,如果count(條目的值大于1),那么該字符已經發生了不止一次。可以打印重復的字符,也可以使用它們執行任何操作。


Java實現查找重復字符串和字符串去重是經常在開發項目中出現的,也是大家需要會的技能。以上就是對在java中查找重復字符串問題的回答,希望通過舉兩個例子的分析,大家能更好的學習怎樣實現查找重復字符串,想學習更多關于java字符串的知識的話,可以在本站的java教程中學習。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 99麻豆久久久国产精品免费 | 久久不雅视频 | 免费不卡毛片 | 午夜精品亚洲 | 亚洲一区二区高清 | 久久一本一区二区三区 | 欧美13一16sex 性 | 99精品国产成人a∨免费看 | 老妇女人一级毛片 | 999国内精品永久免费视频 | 亚洲免费一级片 | 精品一久久香蕉国产线看观看下 | 精品国产一区二区三区久久影院 | 免费观看国产网址你懂的 | 久久精品国产色蜜蜜麻豆 | 欧美性xxxxbbbb | 玖玖国产| 亚洲视频在线网 | 亚洲欧美日韩高清一区二区三区 | 四虎影剧院 | 看看免费a一片欧 | 51国产福利视频在线观看 | 老司机午夜性大片 | 香蕉久久国产 | 国产在线原创剧情麻豆 | 成人免费观看网站 | 香蕉爱视频 | 夜夜操美女| 久久青草免费91线频观看站街 | 久草首页在线 | 亚洲 欧洲 自拍 另类 校园 | 亚洲国产精品久久久久网站 | 亚洲第一免费视频 | 国产高清在线a视频大全凹凸 | 免费一级毛片在线播放泰国 | 美女国产 | 999国产高清在线精品 | 欧美视频第一区 | 美女一级毛片免费观看 | 久久se精品动漫一区二区三区 | 亚洲国产人久久久成人精品网站 |