java 字符串 使用符号隔开统计数字出现的次数 各位大神,请教一段算法一字符串:String str="10,16,0,8,19,11,16,10,16,5,17,11,16,13,3";数字使用逗号隔开,统计出每个数字出现的次数。使用map<数字,次数>;谢谢。字符出现的次数 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public void getCount(String str) { if ("".equals(str)) { return; } String data[] = str.split(","); Map<String, Integer> countMap = new HashMap<String, Integer>(); for (String strData : data) { int count = 1; if (countMap.containsKey(strData)) { count += countMap.get(strData); } countMap.put(strData, count); } for (Map.Entry<String, Integer> entry : countMap.entrySet()) { System.out.println(entry.getKey() + " : " + entry.getValue()); } } 1.可以得到数字的数组,然后排序统计2.也可以直接统计每次得到一个字符,存放map,有+1, 没有添加 这样似乎更好for (String strData : data) { if (countMap.containsKey(strData)) { countMap.put(strData,countMap.get(strData)+1); } else { countMap.put(strData,1); }} 1.可以得到数字的数组,然后排序统计2.也可以直接统计每次得到一个字符,存放map,有+1, 没有添加 我是里混的 import java.util.HashSet;import java.util.HashMap;public class Test { public static void main(String[] args) { // TODO Auto-generated method stub String str="10,16,0,8,19,11,16,10,16,5,17,11,16,13,3"; String temp[] = str.split(","); HashSet <String>myset = new HashSet<String>(); HashMap <String, Integer>mymap = new HashMap<String, Integer>(); for (int i = 0 ; i < temp.length; i++) { if (myset.add(temp[i])) { mymap.put(temp[i],1); } else { mymap.put(temp[i], ((Integer)mymap.get(temp[i]) + 1)); } } System.out.println(mymap); }} import java.util.HashMap;import java.util.Map.Entry;public class TestMain { public static void main(String[] args) { String str="10,16,0,8,19,11,16,10,16,5,17,11,16,13,3"; String[] numbers = str.split(","); java.util.Map<String,Integer> maps = new HashMap<String,Integer>(); for(String s : numbers){ if(maps.containsKey(s)){ int num = maps.get(s); num++; maps.put(s, num); }else{ maps.put(s, 1); } } for(Entry<String, Integer> entry : maps.entrySet()){ System.out.println("数字:"+entry.getKey()+",出现次数:"+entry.getValue()); } } }结果:数字:0,出现次数:1数字:11,出现次数:2数字:13,出现次数:1数字:3,出现次数:1数字:16,出现次数:4数字:5,出现次数:1数字:17,出现次数:1数字:8,出现次数:1数字:19,出现次数:1数字:10,出现次数:2 你们这样直接把code写出来,还让别人学什么!!! String str="10,16,0,8,19,11,16,10,16,5,17,11,16,13,3";String[] numbers = str.split(",");Map<String,Integer> countMap= new HashMap<String,Integer>();for(String num: numbers ){ countMap.contain(num) ? countMap.put(strData,countMap.get(strData)+1) : countMap.put(strData,1);} JAVA开发个浏览器。问题 一个运行时的奇怪问题 请帮我解释一下,下面的代码。 JAVA中如何从文本文件中搜索数据!!!急呀!!! 转让培训机构内部视频培训录像(JAVA+Oracle)和相关书籍,要的进啊~~~ 請教高人!~~~~~~~~~~~~~~~~~~~~~~~~急!!!!!!!!!!!!1 新手请教关于applet的helloworld简单问题 求助JTextPane layout 的问题 小送分。appletview的小问题。 请教!为什么在别的机上运行不能显示中文 求高手点拨一个Java程序的“实施与预期不符”的错误原因. 如何让一个JLabel自动生成?
if ("".equals(str)) {
return;
} String data[] = str.split(",");
Map<String, Integer> countMap = new HashMap<String, Integer>();
for (String strData : data) {
int count = 1;
if (countMap.containsKey(strData)) {
count += countMap.get(strData);
}
countMap.put(strData, count);
} for (Map.Entry<String, Integer> entry : countMap.entrySet()) {
System.out.println(entry.getKey() + " : " + entry.getValue());
} }
2.也可以直接统计每次得到一个字符,存放map,有+1,
没有添加
if (countMap.containsKey(strData)) {
countMap.put(strData,countMap.get(strData)+1);
} else {
countMap.put(strData,1);
}
}
2.也可以直接统计每次得到一个字符,存放map,有+1,
没有添加
我是里混的
import java.util.HashSet;
import java.util.HashMap;
public class Test { public static void main(String[] args) {
// TODO Auto-generated method stub
String str="10,16,0,8,19,11,16,10,16,5,17,11,16,13,3";
String temp[] = str.split(",");
HashSet <String>myset = new HashSet<String>();
HashMap <String, Integer>mymap = new HashMap<String, Integer>();
for (int i = 0 ; i < temp.length; i++) {
if (myset.add(temp[i])) {
mymap.put(temp[i],1);
} else {
mymap.put(temp[i], ((Integer)mymap.get(temp[i]) + 1));
}
}
System.out.println(mymap);
}}
import java.util.Map.Entry;public class TestMain {
public static void main(String[] args) {
String str="10,16,0,8,19,11,16,10,16,5,17,11,16,13,3";
String[] numbers = str.split(",");
java.util.Map<String,Integer> maps = new HashMap<String,Integer>();
for(String s : numbers){
if(maps.containsKey(s)){
int num = maps.get(s);
num++;
maps.put(s, num);
}else{
maps.put(s, 1);
}
}
for(Entry<String, Integer> entry : maps.entrySet()){
System.out.println("数字:"+entry.getKey()+",出现次数:"+entry.getValue());
}
}
}
结果:
数字:0,出现次数:1
数字:11,出现次数:2
数字:13,出现次数:1
数字:3,出现次数:1
数字:16,出现次数:4
数字:5,出现次数:1
数字:17,出现次数:1
数字:8,出现次数:1
数字:19,出现次数:1
数字:10,出现次数:2
String str="10,16,0,8,19,11,16,10,16,5,17,11,16,13,3";
String[] numbers = str.split(",");
Map<String,Integer> countMap= new HashMap<String,Integer>();
for(String num: numbers ){
countMap.contain(num) ? countMap.put(strData,countMap.get(strData)+1) : countMap.put(strData,1);
}