import java.util.HashMap; import java.util.Map;public class Test04 { public static void main(String[] args) { String str = "wo wo shi shi hh;"; char[] cArray = str.toCharArray(); Map m = new HashMap(); for (int i = 0; i < cArray.length; i++) { Character c = (Character) cArray[i]; Integer count = (Integer) m.get(c); m.put(c, (count == null ? 1 : new Integer(count.intValue() + 1))); } System.out.println(m); }}
结果是:{w=2, =4, s=2, ;=1, o=2, h=4, i=2}
第一题import java.io.*; import java.util.SortedMap; import java.util.TreeMap;public class Quest1 { public static void main(String[] args){ System.out.println("please input a string: "); String str = ""; SortedMap<Integer,Character> map = new TreeMap<Integer,Character>(); try{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); str = br.readLine(); br.close(); }catch(IOException e){ System.out.println(e); } char[] ch = str.toCharArray(); for(int i=0;i<ch.length;i++){ int count=0; for(int j=0;j<ch.length;j++){ if(ch[i]==ch[j]){ count++; } } if(!map.containsValue(ch[i])){ map.put(count, ch[i]); } } int highest = map.lastKey(); char cc = map.get(highest); System.out.println("出现频率最大的字符为 :"+cc+" "+"出现次数为:"+highest); } }
帮你找到了 请给分 读出1.txt中的内容,写入2.txt中 import java.io.*; public class Test2 { public static void main(String[] args) { try { File read = new File("c:\\1.txt"); File write = new File("c:\\2.txt"); BufferedReader br = new BufferedReader(new FileReader(read)); BufferedWriter bw = new BufferedWriter(new FileWriter(write));
使用BufferedReader来读,每次读行,然后用PrintWriter写到另一个文件就好。
如下这样:class charac{
private char dchar;//存储字符
private int count;//存储字符出现的个数
public void addCount(){
count++
}
public charac(char dchar){
this.dchar=dcchar;
count=1;
}
}新建一个数组,用来存储你的查找出来的不同的字符,最好排序,查找的时候二分查找,
不同的话则插入,相同的话就addCount()
第二道题
public static void main(String [] args){
BufferedReader in=BufferedReader(new FileReader("readFileName"));
PrintWriter out=new PrintWriter(new FileWriter("writeFileName"));
String readString;
while(readString=in.readLine()!=null){
out.println(readString);
in.close();
out.close();
}
}
import java.util.Map;public class Test04 { public static void main(String[] args) {
String str = "wo wo shi shi hh;";
char[] cArray = str.toCharArray();
Map m = new HashMap();
for (int i = 0; i < cArray.length; i++) {
Character c = (Character) cArray[i];
Integer count = (Integer) m.get(c);
m.put(c, (count == null ? 1 : new Integer(count.intValue() + 1)));
}
System.out.println(m); }}
import java.util.SortedMap;
import java.util.TreeMap;public class Quest1 {
public static void main(String[] args){
System.out.println("please input a string: ");
String str = "";
SortedMap<Integer,Character> map = new TreeMap<Integer,Character>();
try{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
str = br.readLine();
br.close();
}catch(IOException e){
System.out.println(e);
}
char[] ch = str.toCharArray();
for(int i=0;i<ch.length;i++){
int count=0;
for(int j=0;j<ch.length;j++){
if(ch[i]==ch[j]){
count++;
}
}
if(!map.containsValue(ch[i])){
map.put(count, ch[i]);
}
}
int highest = map.lastKey();
char cc = map.get(highest);
System.out.println("出现频率最大的字符为 :"+cc+" "+"出现次数为:"+highest);
}
}
读出1.txt中的内容,写入2.txt中
import java.io.*;
public class Test2 {
public static void main(String[] args) {
try {
File read = new File("c:\\1.txt");
File write = new File("c:\\2.txt"); BufferedReader br = new BufferedReader(new FileReader(read));
BufferedWriter bw = new BufferedWriter(new FileWriter(write));
String temp = null;//临时存储变量
temp = br.readLine();
while (temp != null) {
// 写文件
bw.write(temp + "\r\n"); // 只适用Windows系统
// 继续读文件
temp = br.readLine();
}
bw.close();
br.close();
} catch (FileNotFoundException e) { // 文件未找到
System.out.println(e);
} catch (IOException e) {
System.out.println(e);
}
}
}