统计输入字符串的每个字母个数:
TreeMap是一个能比较元素大小的Map集合,会对传入的key进行了大小排序。其中,可以使用元素的自然顺序,也可以使用集合中自定义的比较器来进行排序;
public class CharCount {
public static void main(String[] args) {
TreeMap tm =new TreeMap();
Scanner sc =new Scanner(System.in);
// 输入要统计的字符串
String s=sc.nextLine();
for(int i=0;i
统计一串英文中有多少单词及其出现的次数:
import java.util.Iterator;
import java.util.Scanner;
import java.util.TreeMap;
public class WordCount{
public static void main(String[] args) {
TreeMap tm =new TreeMap();
Scanner sc =new Scanner(System.in);
String s="Life was like a box of chocolates, you never know what you gonna get. i love you";
String[] lineWords=s.split("\s+|\.|\,");
//用非单词符来做分割,分割出来的就是一个个单词
for(int i=0;i
用Scanner类来实现文本文件中英文单词的统计:
import java.io.File;
import java.util.Scanner;
import java.util.TreeMap;
public class ScannerWordCount {
public static void main (String[] args)throws Exception {
TreeMap< String, Integer> tm = new TreeMap();
Scanner sc =new Scanner(new File("resourse\Test.txt"));
sc.useDelimiter("\s|,|\.|"|\)|\(");
String s =null;
int count=0;
while(sc.hasNext()) {
s=sc.next();
if(!s.trim().equals("")) {
count++;
if(tm.containsKey(s)) {
tm.put(s, tm.get(s)+1);
}else {
tm.put(s, 1);
}
}
}
System.out.println(count);
System.out.println(tm);
}
}
split用法:
1.如果是要用“.”分隔字符串的话一点要在前面加 要是String.split(" .")
2、如果用“|”作为分隔的话,必须是如下写法:String.split(”\|"),这样才能正确的分隔开,不能用String.split("|");
“.”和“|”都是转义字符,必须得加" ";
3、如果在一个字符串中有多个分隔符,可以用“|”作为连字符,比如:“acount=? and uu =? or n=?”,把三个都分隔出来,可以用String.split(“and|or”);



