日期:2014-05-20  浏览次数:20629 次

帮忙做一下这几道题,急用!先说声谢谢哦.在线等!
1、 编写一个Java应用程序,对用户输入的任意一组字符如{1,3,4,7,2,1,1,5,2},输出其中出现次数最多且数值最大的字符,并显示其出现次数。

2、 编写一个Java应用程序,使用Java的输入输出流技术将Input.txt的内容逐行读出,每读出一行就顺序为其添加行号(从1开始,逐行递增),并写入到另一个文本文件Output.txt中。

3、 编写一个Java应用程序,使用RandomAccessFile流统计Hello.txt中的单词,要求如下:
(1)计算全文中共出现了多少个单词(重复的单词只计算一次);
(2)统计出有多少个单词只出现了一次;
(3)统计并显示出每个单词出现的频率,并将这些单词按出现频率高低顺序显示在一个TextArea中。


------解决方案--------------------
第一题:[code=Java]import java.util.Iterator;
import java.util.TreeSet;

public class Amount_Large {
public static void main(String[] args) {
int []a=new int[]{1,3,4,7,2,1,1,5,2};
structure s=find(a);
System.out.println("出现次数:"+s.getCount()+" 该数字是:"+s.getNum());

}
static structure find(int []a){
int []temp=a;
int count=0;
TreeSet t=new TreeSet();

for (int i = 0; i < temp.length; i++) {
t.add(temp[i]);
}
structure s=new structure();
Iterator<Integer>i=t.iterator();
while (i.hasNext()) {
int num= i.next().intValue();
for (int j = 0; j < temp.length; j++) {
if (num==temp[j]) {
count++;
}
}
if(count>s.getCount()){
s.setCount(count);
s.setNum(num);
}
count=0;

}

return s;
}
}
class structure{
int count;
int num;
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
}
code]
------解决方案--------------------
第一题
Java code
private static Map map = new HashMap();

    private static void init(Object obj) {
        if (map.containsKey(obj)) {
            int i = (Integer) map.get(obj);
            i++;
            map.put(obj, i);
        } else {
            map.put(obj, 1);
        }
    }

    public static void main(String[] args) {
        int[] count = { 1, 2, 3, 1, 2, 1, 2, 3, 2, 1, 2 };
        for (int i = 0; i < count.length; i++) {
            init(count[i]);
        }
        System.out.println(map);//{2=5, 1=4, 3=2}
    }