Java作业5

1.编程生成10个1~100之间的随机数,并统计每个数出现的概率。

这个博文里面又random的详细解释:https://www.cnblogs.com/ningvsban/p/3590722.html

package experiment;
import java.util.Arrays;//用来用sort的
import java.util.Scanner;//这是用来输入的
import java.util.Random;//这是random函数


public class ShenYue 
{
    public static void main(String[] args) 
    {
        // TODO Auto-generated method stub
        Random r1 = new Random(100);//这个100并无作用
        int[] a = new int[10]; //用来存有哪些数字是幸运鹅
        int[] a_save = new int[120];//用来存出现几次
        for(int i = 1; i <= 100; i++)
        {
            a_save[i] = 0;//初始化数组为0
        }
        for( int i = 0; i < 10; i++)
        {
            a[i] = r1.nextInt(100)+1;//这个100表示[0,100)所以这里要+1
            a_save[a[i]] ++;
            System.out.print(a[i]+" ");//打印出来,那些是幸运鹅
        }
        System.out.print("\n");
        for(int i = 1; i <= 100; i++)
        {
            double re;
            re = 1.0*a_save[i]/10 ;
            if(re != 0) System.out.println(i+"的概率是:"+re);
        }
        System.out.println("其余概率均为0");
    }
}

 2.使用HashMap类保存由学号和学生姓名所组成的键-值对,比如"200709188"和"John Smith",然后按学号的自然顺序将这些键-值对一一打印出来。

这里有一个简单的sort用法:Arrays.sort(你设定的数组,0,n)

我其实一直不太懂,明明hash容器是无顺序的,为何还要排序?难道不该是Treemap吗?

package experiment;
import java.util.Arrays;//用来用sort的
import java.util.Scanner;//这是用来输入的
import java.util.Random;//这是random函数
import java.util.HashMap;//这是HashMap类


public class ShenYue 
{
    public static void main(String[] args) 
    {
        // TODO Auto-generated method stub
        HashMap<Integer, String> Hmap = new HashMap<>();
        Hmap.put(200709188, "John Smith");
        Hmap.put(200709221, "Sakura XiYue");
        Hmap.put(200709198, "Dilraba");
        Hmap.put(200709187, "Wangdachui");
        int[] a = {200709188,200709221,200709198,200709187};
        Arrays.sort(a, 0, 4);
        for(int i=0; i<4; i++)
        {
            System.out.print(a[i]+" ");
            System.out.println(Hmap.get(a[i]));
        }    
    }
}

猜你喜欢

转载自www.cnblogs.com/sakuraXiYue/p/9901010.html
今日推荐