A. java中怎麼統計一個字元串中每個字元的出現次數
操作如下:
String str ="2342asfghgyu56asdasda";Map<String,Integer> maps = new HashMap<String,Integer>();for(int i=0;i<str.length();i++){。
String key = String.valueOf((str.charAt(i)));if(!maps.containsKey(key)),maps.put(key, 1);else{int val =maps.get(key);maps.put(key, val+1);
for(Map.Entry i : maps.entrySet()){System.out.println(i.getKey()+ "=="+i.getValue());
B. java怎麼實現統計一個字元串中字元出現的次數
可以用String的indexof(str,fromindex)方法,循環遍歷加一個計數器統計次數。
publicclassCountTimes{
publicstaticvoidmain(String[]args){
Stringstr="Intheentireworldthere'";
inttimes=searchstr("my",str);//返回2
System.out.println(times);
}
publicstaticintsearchstr(Stringkey,Stringstr){
intindex=0;//每次的搜索到的下標
intcount=0;//計數器
while((index=str.indexOf(key,index))!=-1){
index=index+key.length();
count++;
}
returncount;
}
}
C. java中如何統計某個字母在一個字元串中出現了多少次啊
1、根據length獲取字元串長度
Strings="abcdedfae";//定義一個字元串
intlen=s.length();//獲取原來的字元串長度
2、通過replaceAll方式,把字元串中該字母替換成空
Strings1=s.replaceAll(要統計的字母,"");
3、獲取替換後的字元串長度
intlen2=s1.length();
4、原來的字元串長度減去替換後的字元串長度就是該字母出現的次數
intlenTimes=len1-len2;//出現的次數
D. java中Scanner鍵盤輸入一個字元串 要求計算出每個字元出現的次數
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Scanner;
/*
* (1)利用鍵盤錄入,輸入一個字元串
(2)統計該字元串中各個字元的數量
*/
public class InputString {
public static void main(String[] args) {
//獲取鍵盤輸入的字元串
Scanner sc=new Scanner(System.in);
System.out.println("請輸入一個字元串!");
String st=sc.nextLine();
//將字元串存分解成每個字元,存到數組中
char [] ch=st.toCharArray();
//創建map的集合,存儲字元和出現的次數,其中將字元作為鍵值
Map<Character,Integer> map=new HashMap<Character,Integer>();
//使用循環,將數組ch中的元素遍歷出來,並用計數器計算出現的次數
for(char c:ch) {
//判斷字元c是否存在集合中,存在的話,更新map中的元素對(因為map中的元素是唯一的)
if(map.containsKey(c)) {
Integer count=map.get(c);
count=count+1;
map.put(c, count);
//如果不存在,將字元和出現的次數(1次),存到集合中
}else {
map.put(c, 1);
}
}
//用增強for循環,輸出字元的出現次數
for(char key:map.keySet()) {
System.out.println(key+"的出現次數是"+map.get(key));
}
}
}
===================================
運行後的結果如下:
E. Java程序如何統計某字元在該字元串中出現的次數思路是什麼
思路:
先輸入字元串與想要統計的字元,然後遍歷字元串的每一個字元,進行統計。
代碼:
import java.text.ParseException;
import java.util.Scanner;
class DemoAsm{
public static void main(String[] args) throws ParseException {
Scanner sc =new Scanner(System.in);
//輸入字元串
String str=sc.nextLine();
//輸入字元
String str1=sc.nextLine();
//遍歷字元串
int sum=0;
for(int i=0;i<str.length();i++){
if(str.substring(i, i+1).equals(str1)){
sum++;//統計
}
}
System.out.println(str1+"出現了"+sum+"次");
}
}
F. java怎麼實現統計一個字元串中字元出現的次數
import java.util.*;
public class Test {
public static void main(String args[]){
String s = "abcdad"; //待測試的字元串
Map<Character, Integer> result = getCharMaps(s);
System.out.println(result);//列印出字元串中各字元出現的次數!
}
public static Map<Character, Integer> getCharMaps(String s) {
Map<Character, Integer> map = new HashMap<Character, Integer>();
for(int i = 0; i < s.length(); i++) {
Character c = s.charAt(i);
Integer count = map.get(c);
map.put(c, count == null ? 1 : count + 1);
}
return map;
}
}
G. 用java編寫一個函數,統計一個字元串中每個字母出現的次數,謝謝啦
import java.util.Scanner;
import java.util.Set;
import java.util.TreeMap;
/*
* 需求 :"aababcabcdabcde",獲取字元串中每一個字母出現的次數要求結果:a(5)b(4)c(3)d(2)e(1)
*
* 分析:
* A:定義一個字元串(可以改進為鍵盤錄入)
* B:定義一個TreeMap集合
* 鍵:Character
* 值:Integer
* C:把字元串轉換為字元數組
* D:遍歷字元數組,得到每一個字元
* E:拿剛才得到的字元作為鍵到集合中去找值,看返回值
* 是null:說明該鍵不存在,就把該字元作為鍵,1作為值存儲
* 不是null:說明該鍵存在,就把值加1,然後重寫存儲該鍵和值
* F:定義字元串緩沖區變數
* G:遍歷集合,得到鍵和值,進行按照要求拼接
* H:把字元串緩沖區轉換為字元串輸出
*
* 錄入:linqingxia
* 結果:result:a(1)g(1)i(3)l(1)n(2)q(1)x(1)
*/
public class TreeMapDemo {
public static void main(String[] args) {
// 定義一個字元串(可以改進為鍵盤錄入)
Scanner sc = new Scanner(System.in);
System.out.println("請輸入一個字元串:");
String line = sc.nextLine();
// 定義一個TreeMap集合
TreeMap<Character, Integer> tm = new TreeMap<Character, Integer>();
//把字元串轉換為字元數組
char[] chs = line.toCharArray();
//遍歷字元數組,得到每一個字元
for(char ch : chs){
//拿剛才得到的字元作為鍵到集合中去找值,看返回值
Integer i = tm.get(ch);
//是null:說明該鍵不存在,就把該字元作為鍵,1作為值存儲
if(i == null){
tm.put(ch, 1);
}else {
//不是null:說明該鍵存在,就把值加1,然後重寫存儲該鍵和值
i++;
tm.put(ch,i);
}
}
//定義字元串緩沖區變數
StringBuilder sb= new StringBuilder();
//遍歷集合,得到鍵和值,進行按照要求拼接
Set<Character> set = tm.keySet();
for(Character key : set){
Integer value = tm.get(key);
sb.append(key).append("(").append(value).append(")");
}
//把字元串緩沖區轉換為字元串輸出
String result = sb.toString();
System.out.println("result:"+result);
}
}
/***不懂裡面的的一些方法的可以找本書看看Map集合方面的,還有學會查API,否則你一輩子都讀不懂JAVA程序的,其實我這個不用分析的話應該是這個問題的最簡解了吧。。。。***/