要求:桌面上有一个txt文件,其中有100行数字,找出每行数字的后两位出现次数最多的,并打印出来。
如:
打印出 20.
package leetcode;import java.io.*;
import java.util.*;public class demo79 {
public static void main(String[] args) throws IOException {
List<String> list = new ArrayList<>();List<Integer> list1 = new ArrayList<>();BufferedReader bufferedReader = new BufferedReader(new FileReader("C:\\Users\\52267\\Desktop\\demo\\ss.txt"));String line = null;while ((line = bufferedReader.readLine()) != null) {
System.out.println(line);list.add(line);}System.out.println(list);for (String x : list) {
//在 Java 中要将 String 类型转化为 int 类型时,需要使用 Integer 类中的 parseInt() 方法或者 valueOf() 方法进行转换.list1.add(Integer.parseInt(x) % 100);}System.out.println(list1);bufferedReader.close();int[] x = new int[list1.size()];int i = 0;for (int ss : list1) {
x[i++] = ss;}System.out.println(x);for (int xx:x){
System.out.println(xx);}demo79.candidate(x);}//找出数组中出现次数最多的public static void candidate (int[] array) // 找出数组中出现次数最多的那个数{
int[] count = new int[101]; // 计数数组,每个元素的默认值为0for(int i = 0; i < array.length; i++){
count[array[i]]++; // 对应的计数值加1}int maxCount = count[0];int maxNumber = 0;for(int i = 1; i < 100; i++) // 找出最多出现的次数{
if(count[i] > maxCount)maxCount = count[i];}for(int i = 0; i < 100; i++) // 找出出现最多次的那个数字{
if(count[i] == maxCount)maxNumber = i;}System.out.println("出现次数最多的数字为:" + maxNumber);System.out.println("该数字一共出现" + maxCount + "次");}}