Sakura晞月

导航

Java作业五

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]));
        }    
    }
}

 

3.编写一个程序,使用Map实现对学生成绩单的存储和查询,并将成绩排序存储到TreeSet中,求出平均成绩、最高分和最低分。

我这个代码也是转载的,还没有试过(滚去面壁)

package rongqi.fourth;

 

public class student {

    int id;

    String name;

    int age;

    public student(){

        

    }

    public student(int id,String name,int age) {

        super();

        this.id=id;

        this.name=name;

        this.age=age;

    }

    public int getId() {

        return id;

    }

    public void setId(int id) {

        this.id = id;

    }

    public String getName() {

        return name;

    }

    public void setName(String name) {

        this.name = name;

    }

    public int getAge() {

        return age;

    }

    public void setAge(int age) {

        this.age = age;

    }

        

    

    

    

    

}
package rongqi.fourth;

 

import java.util.HashMap;

import java.util.Map;

 

import java.util.Set;

 

 

 

public class database  {

    student st;

    static Map<Integer,student> map;

 

    public  database(){

        map=new HashMap<Integer,student>();

    }

    public void insert() {

        st=new student();

    

        

        System.out.println("请输入学号");

         

        st.setId(Uitl.in.nextInt());

        

        System.out.println("请输入姓名");

        st.setName(Uitl.in.next());

        System.out.println("请输入年龄");

        st.setAge(Uitl.in.nextInt());

        map.put(st.getId(),st);

        System.out.println("成功插入一条数据");

    }

    public void selectAll() {

        System.out.println("   学号               姓名               年龄");

        System.out.println("===========================");

        Set keys=map.keySet();

        for(Object key:keys){

            System.out.println("学号"+map.get(key).getId()+"   姓名"+map.get(key).getName()+"    年龄"+map.get(key).getAge());

        }

    }

    public void delete(){

        System.out.println("输入要删除的学号");

        int id=Uitl.in.nextInt();

        if(map.get(id)==null){

            System.out.println("没有此学生");

        }else {

            map.remove(id);

            System.out.println("已删除");

        }

    }

    public void updata(){

        System.out.println("输入要修改的学号");

        int id=Uitl.in.nextInt();

        if(map.get(id)==null){

            System.out.println("没有此学生");

        }else {

            System.out.println("输入要修改姓名");

            st.setName(Uitl.in.next());

            System.out.println("输入要修改的年龄");

            st.setAge(Uitl.in.nextInt());

        }

    }

    

}

 

4.编写一个程序,实现将十进制整数转换为二进制、八进制和十六进制形式。

内置函数,非常舒服

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
        Scanner in = new Scanner(System.in);
        int a = in.nextInt();
        System.out.println(Integer.toBinaryString(a));//10->2
        System.out.println(Integer.toOctalString(a));//10->8
        System.out.println(Integer.toHexString(a));//10-16
    }
}

6.使用java.text.SimpleDateFormat类将系统日期格式化为“2007年8月20日”的形式输出。

惭愧啊,还是找了百度参考

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


public class ShenYue 
{
    public static void main(String[] args) 
    {
        // TODO Auto-generated method stub
        SimpleDateFormat sdf = new SimpleDateFormat();
        sdf.applyPattern("yyyy年MM月dd日");//这是设定自己想要的样式 
        System.out.println(sdf.format(new Date()));
    }
}

7.编写程序实现:定义一个Float类型的数组,随机往其中填充元素,并打印该数组内容。

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


public class ShenYue 
{
    public static void main(String[] args) 
    {
        // TODO Auto-generated method stub
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();//自定义数组大小
        Float[] a = new Float[n];//定义一个大小为n的数组
        for(int i = 0; i < n; i++)
        {
            a[i] = (float) in.nextInt();//强制转换
        }
        for(int i = 0; i < n; i++)
        {
            System.out.print(a[i]+" ");
        }
    }
}

 

posted on 2018-11-03 15:51  Sakura晞月  阅读(418)  评论(0编辑  收藏  举报