Java——集合(輸入一串字符串,統計字符串中每個字符出現的次數)

  • A:案例演示

    • 需求:輸入一串字符串,統計字符串中每個字符出現的次數**

      • 分析:
    • 1,定義一個需要被統計字符的字符串
    • 2,將字符串轉化為字符數組,才能拿到每一個字符
    • 3,定義雙列集合存儲字符串中字符以及字符出現的次數
    • 4,遍歷字符數組獲取每一個字符,并將字符存儲在雙列集合中
    • 5,存儲過程中要做判斷,如果集合中不包含這個鍵,就將該字符當作鍵,值為1存儲;如果集合中包含這個鍵,就將值加1存儲
    • 6,打印雙列集合獲取字符出現的次數

    代碼如下:

import java.util.HashMap;
import java.util.Scanner;public class Test1 {public static void main(String[] args) {Scanner wsq = new Scanner(System.in);System.out.println("請輸入任意一串字符串");//1,定義一個需要被統計字符的字符串,并隨意輸入一串字符串String s = wsq.next();//2,將字符串轉化為字符數組,才能拿到每一個字符char [] arr = s.toCharArray();//3,定義雙列集合存儲字符串中字符以及字符出現的次數HashMap<Character, Integer> yy = new HashMap<>();//4,遍歷字符數組獲取每一個字符,并將字符存儲在雙列集合中 for(char c : arr){//5,存儲過程中要做判斷,如果集合中不包含這個鍵,就將該字符當作鍵,值為1存儲;如果集合中包含這個鍵,就將值加1存儲/*if(!yy.containsKey(c)){   //如果不包含這個鍵yy.put(c, 1);}else{yy.put(c,yy.get(c) + 1);}*/yy.put(c,!yy.containsKey(c) ? 1 :yy.get(c) + 1);}//6,打印雙列集合獲取字符出現的次數for (Character key : yy.keySet()) {                 //yy.keySet() : 代表所有鍵的集合System.out.println(key + "=" + yy.get(key));    //yy.get(key) : 根據鍵獲取值}}}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/380026.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/380026.shtml
英文地址,請注明出處:http://en.pswp.cn/news/380026.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

entry數組_數組entry()方法以及JavaScript中的示例

entry數組JavaScript entry()方法 (JavaScript entries() method) entries() method is used to create an iterator object of an array to access the keys (index) and values. entry()方法用于創建數組的迭代器對象&#xff0c;以訪問鍵(索引)和值。 Syntax: 句法&#xf…

mul和div指令(8位,16位,32位)

MUL 無符號乘法指令&#xff0c;默認操作數與eax相乘&#xff08;這里只說32位&#xff0c;其他與下面的div類似&#xff09; 格式&#xff1a; mul 操作數 //操作數只有一個操作數與eax相乘&#xff0c;結果共有16位&#xff08;這里的16位是16進制數&#xff09;&#xff…

2011年年終盤點

不知不覺又到了年底&#xff0c;我坐在電腦前&#xff0c;竭力的回憶&#xff0c;卻發現回憶中一片空白&#xff0c;能記起也就那么幾件事。 一、在暑假做了一個多月的電子商務 在這個過程中&#xff0c;我了解到電子商務的基本流程&#xff0c;以及一些銷售技巧&#xff0c;還…

ASP.NET Application,Session,Cookie和ViewState等對象用法和區別

ASP.NET Application,Session,Cookie和ViewState等對象用法和區別 在ASP.NET中&#xff0c;有很多種保存信息的內置對象&#xff0c;如:Application,Session,Cookie,ViewState和Cache等。下面分別介紹它們的用法和區別。 方法 信息量大小 作用域和保存時間 應用…

Java——集合(HashMap與Hashtable的區別)

* HashMap和Hashtable的區別* 共同點&#xff1a;* 底層都是哈希算法&#xff0c;都是雙列集合* 區別&#xff1a;* 1&#xff0c;HashMap是線程不安全的&#xff0c;效率高* Hashtable是線程安全的&#xff0c;效率低 * 2&#xff0c;HashMap可以存儲null鍵和null值* Has…

判斷字符串是否構成回文_構成字符串回文的最小刪除數

判斷字符串是否構成回文Problem statement: 問題陳述&#xff1a; Given string str find the minimum number of deletions such that the resultant string is a palindrome. 給定的字符串str找到最小的刪除數&#xff0c;以使最終的字符串成為回文。 Input:Each input con…

imul和idiv指令

imul 有符號乘法指令&#xff0c;分單操作數&#xff0c;雙操作數和但操作數 單操作數&#xff1a;此形式與mul指令使用完全相同&#xff0c;操作數乘以al、ax、或eax寄存器中的值&#xff0c;乘積分別存儲到ax、dx&#xff1a;ax或edx&#xff1a;eax中 執行指令&#xff1a…

Ajax的注冊應用

最近發現Ajax在用戶注冊表單和用戶登錄表單方面應用&#xff0c;最能體現Ajax的交互特點&#xff0c;因此又是寫了一個習作&#xff01; 演示效果 新開窗口地址&#xff1a; http://www.klstudio.com/demo/ajax/reg.htm 下載地址:http://www.klstudio.com/demo/ajax/reg.rar &…

Java——集合(模擬斗地主洗牌和發牌進行排序)

//改進版&#xff0c;沒有進行按牌的地位從小到大排序 package com.yy.test;import java.util.ArrayList; import java.util.Collections;public class Test2 {/*** * A&#xff1a;案例演示* 模擬斗地主洗牌核發牌&#xff0c;牌沒有排序* * 分析&#xff1a;* 1&#xff0c;…

應用程序控件

活動指示器 當任務或進程已經完成時&#xff0c;活動指示器就會消失。推薦您使用這種默認行為&#xff0c;因為用戶期望在有動作發生時看到活動指示器&#xff0c;而且他們會將靜止不動的活動指示器與停滯的進程聯想到一起。 要了解如何顯示網絡活動指示器&#xff0c;請參考UI…

離散數學與集合論_離散數學中的集合論和集合類型

離散數學與集合論集合論 (Set theory) The set is a well-defined collection of definite objects of perception or thought and the Georg Cantor is the father of set theory. A set may also be thought of as grouping together of single objects into a whole. The ob…

XADD和NEG命令

XADD 交換相加指令&#xff0c;先交換然后相加 比如說&#xff1a; xadd eax&#xff0c;ecx /* 相當于&#xff1a;先執行&#xff1a;xchg eax,ecx然后執行&#xff1a;add eax,ecx */此時eax2&#xff0c;ecx3&#xff0c;執行完&#xff1a;eax5&#xff0c;ecx2 neg …

Visual C# 2008+SQL Server 2005 數據庫與網絡開發--11.3.2 LINQ to SQL對數據庫建模

Visual Studio 2008版本中為LINQ to SQL提供了一個特別的設計器&#xff0c;使用這個設計器可以很方便的將數據庫可視化地轉換為LINQ to SQL對象模型。在LINQ to SQL中&#xff0c;設計器在關系數據庫的數據模型和開發語言之間建立一座橋梁。當應用程序運行時&#xff0c;LINQ …

Java——異常處理(鍵盤錄入一個整數,輸出其對于二進制)

例題&#xff1a; 鍵盤錄入一個int類型的整數&#xff0c;對其求二進制表現形式 如果錄入的整數過大&#xff0c;給予提示&#xff0c;錄入的整數過大&#xff0c;請重新錄入一個整數BigInteger 如果錄入的是小數&#xff0c;給予提示&#xff0c;錄入的是小數&#xff0c;請…

認清SQL_Server_2005的基于行版本控制的兩種隔離級別

--認清SQL_Server_2005的基于行版本控制的兩種隔離級別--By:zc_0101 Date:2010-03-31--快照隔離級別(snapshot)和已提交讀快照隔離級別(read committed snapshot)--特點&#xff1a;在這兩種隔離級別下&#xff0c;讀取數據時不再請求共享鎖&#xff0c;而且永遠不會與修改進程…

Java SecurityManager checkPermission()方法與示例

Syntax: 句法&#xff1a; public void checkPermission(Permission perm);public void checkPermission(Permission perm, Object cntxt);SecurityManager類的checkPermission()方法 (SecurityManager Class checkPermission() method) checkPermission() method is availa…

匯編test指令

功能&#xff1a;將兩個操作數進行邏輯與運算&#xff0c;并根據運算結果設置相關的標志位&#xff0c;并不改變操作數1和操作數2的值 test 操作數1&#xff0c;操作數2我們經常用test來判斷一個值是否為0&#xff0c;用法&#xff1a; test 操作數1&#xff0c;操作數1比如我…

CSS兼容IE/Firefox要點

首先我們說說firefox和IE對CSS的寬度顯示有什么不同&#xff1a; 其實CSS ’width’ 指的是標準CSS中所指的width的寬度&#xff0c;在firefox中的寬度就是這個寬度。它只包含容器中內容的寬度。而Internet Explorer ’width’則是指整個容器的寬度&#xff0c;包括內容&#x…

Java GregorianCalendar computeFields()方法與示例

GregorianCalendar類computeFields()方法 (GregorianCalendar Class computeFields() method) computeFields() method is available in java.util package. 在java.util包中提供了validateFields()方法 。 computeFields() method is used to compute the calendar fields and…

JS、JNS、JP(JPE)、JNP(JPO)指令詳解、從原理上解釋

JS 格式&#xff1a; js 地址當執行到JS指令時&#xff0c;如果標志位SF1&#xff0c;則跳轉到指定的地址&#xff0c;如果SF0&#xff0c;不跳轉 比如&#xff1a; cmp eax&#xff0c;ecx js 0040100c此時eax0&#xff0c;ecx1&#xff0c;執行完cmp命令&#xff0c;符號標…