• Java方法


    素数输出:

     1 import java.util.*;
     2 
     3 public class Test {
     4 
     5     Scanner scanner=new Scanner(System.in);
     6     @SuppressWarnings("null")
     7     public static void main(String[] args) {
     8         Test test = new Test();
     9         test.outPrime();//3-100之间的素数
    10         test.outTwoPrime();//任意两数之间的素数
    11         
    12     }
    13 
    14     private void outTwoPrime() {
    15         System.out.println("
    ");
    16         System.out.print("请输入两个整数:");
    17         int numOne=scanner.nextInt();
    18         int numTwo=scanner.nextInt();
    19         int primeNum=0,size=1000;
    20         int primesNum[]=new int[size];
    21         for(int i=numOne;i<=numTwo;i++) {
    22             int num=0;
    23             
    24             for(int j=2;j<i;j++) {
    25                 if(i%j==0)
    26                     num++;
    27             }
    28             if(num==0) {
    29                 System.out.print(i+"	");
    30                 primeNum++;
    31                 
    32                 primesNum[primeNum]=i;
    33                 //System.out.println(primeNum);
    34                 if(primeNum%5==0)
    35                     System.out.print("
    ");
    36             }
    37             }
    38         //最大及最小的10个
    39         
    40         System.out.println("
    最小的十个是:");
    41         int Num=0;//计数,5换行
    42         for(int i=1;i<=10;i++) {
    43             System.out.print(primesNum[i]+"	");
    44             Num++;
    45             if(Num%5==0) {
    46                 System.out.print("
    ");
    47             }
    48         }
    49         System.out.println("
    最大的十个是:");
    50         for(int i=primeNum;i>primeNum-10;i--) {
    51             System.out.print(primesNum[i]+"	");
    52             Num++;
    53             if(Num%5==0) {
    54                 System.out.print("
    ");
    55             }
    56         }
    57     }
    58 
    59     private void outPrime() {
    60         int primeNum=0;
    61         for(int i=3;i<=100;i++) {
    62             int num=0;
    63             
    64             for(int j=2;j<i;j++) {
    65                 if(i%j==0)
    66                     num++;
    67             }
    68             if(num==0) {
    69                 System.out.print(i+"	");
    70                 primeNum=primeNum+1;
    71                 //System.out.println(primeNum);
    72                 if(primeNum%5==0)
    73                     System.out.print("
    ");
    74             }
    75             }
    76     }
    77 
    78 }

    大多错误是空间不够,如果素数太多就需要改变空间大小了。

    字母统计:

    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileReader;
    import java.util.Collections;
    import java.util.Iterator;
    import java.util.Map;
    import java.util.TreeMap;
    
    public class Wordtest {
    
        public static void main(String[] args) {
            fread("F:\\develop\\eclipse-workspace\\课堂测试(统计单词)(10.11)\\Test.txt");
        }
    
        // 读取文件:
        public static void fread(String fileurl) {
            File file = new File(fileurl);
            BufferedReader bfr = null;
            try {
                bfr = new BufferedReader(new FileReader(file));
                String tem = null;
                String value = "";
                while ((tem = bfr.readLine()) != null) {
                    value = value + tem;
                }
                System.out.println(value);
                // 将读取的字符串转换成字符数组:
                char[] c = value.toCharArray();
                // 定义一个map来存储结果:
                // HashMap<Character,Integer> tm = new
                // HashMap<Character,Integer>(Collections.reverseOrder());
                TreeMap<Character, Integer> tm = new TreeMap<Character, Integer>(Collections.reverseOrder());// TreeMap可排序(传入一个反转比较器)
    
                for (int i = 0; i < c.length; i++) {
                    char charSrc = c[i];
                    if (tm.containsKey(charSrc)) { // 判断该键的值是否存在
                        int count = tm.get(charSrc);
                        tm.put(charSrc, count + 1);
                    } else {
                        tm.put(charSrc, 1);
                    }
                }
    
                // 取出Map中的键和值
                Iterator<Map.Entry<Character, Integer>> titer = tm.entrySet().iterator();
                while (titer.hasNext()) {
                    Map.Entry<Character, Integer> map = titer.next();
                    char key = map.getKey();
                    int valu = map.getValue();
                    System.out.println(key + "出现过" + valu + "次!");
                }
    
            } catch (Exception e) {
                System.err.println("文件读取错误");
            } finally {
                try {
                    if (bfr != null) {
                        bfr.close();
                    }
                } catch (Exception e2) {
                    System.err.println("文件关闭错误");
                }
            }
    
        }
    }

    大多是在统计上出现的问题,由于掌握的方法太少,在完成时没有用合理的方法,没有写出完整的程序,最后在网上搜到了正确的方法,才写出来。

    还是自己掌握的方法太少了,一遇到新的问题就只能去度娘了。

  • 相关阅读:
    RK3399之时钟
    C之{}注意点
    ARM之不用段寄存猜想
    linux驱动之入口
    android之HAL
    git
    消息中间之ActiveMQ
    Maven之阿里云镜像仓库配置
    清理Oracle临时表空间
    Tomcat控制台日志输出到本地文件
  • 原文地址:https://www.cnblogs.com/msdog/p/9786419.html
Copyright © 2020-2023  润新知