Java暑期学习第七天日报

一、今天继续学习《Java程序设计完全手册》第三章的内容。主要是练习了3.5的综合实例和3.7的课后习题。此次的习题练习中的双色球难度较为大一点,主要在判断该数是否使用过,如果使用过则重新生成随机数这个点存在一些难度。3.7的课后习题难度不大,适合新手练习巩固知识。

二、计划明天做一些习题进行巩固提升。

三、今天的练习题目如下:

1.3.5的综合实例——双色球

import java.util.Random;
import java.util.*;
import java.util.Arrays;
public class string extends solution {
    public static void main(String [] args)
    {
        String [] pool= {"01","02","03","04","05","06","07",
                "08","09","10","11","12","13","14","15","16",
                "17","18","19","20","21","22","23","24","25",
                "26","27","28","29","30","31","32","33"};
        boolean [] used=new boolean[pool.length];
        String [] ball=new String[6];
        Random random=new Random();
        int i,index=0;
        while(true)
        {
            i=random.nextInt(pool.length);
            if(used[i])
            {
                continue;
            }
            ball[index++]=pool[i];
            used[i]=true;
            if(index==ball.length)
            {
                break;
            }
        }
        Arrays.sort(ball);
        String [] newball=new String[7];
        for(int m=0;m<ball.length;m++)
        {
            newball[m]=ball[m];
        }
        newball[newball.length-1]=pool[random.nextInt(16)];
        System.out.println("双色球为:"+Arrays.toString(newball));
    }

}

测试截图:

         

 2.  3.7的课后习题

(1)对以下数据使用冒泡排序、选择排序、插入排序,进行从小到大排序{1,5,6,9,8,2,3};

冒泡排序:

import java.util.Arrays;
public class sort {
    public static void main(String [] args)
    {
        int []num= {1,5,6,9,8,2,3};
        int i,j,k;
        for(i=0;i<num.length-1;i++)
            for(j=0;j<num.length-1-i;j++)
            {
                if(num[j]>num[j+1])
                {
                    k=num[j];
                    num[j]=num[j+1];
                    num[j+1]=k;
                }
            }
        System.out.println(Arrays.toString(num));
    }

}

测试截图:

选择排序:

import java.util.Arrays;
public class sort {
    public static void main(String [] args)
    {
        int []num= {1,5,6,9,8,2,3};
        int i,j,k;
        for(i=0;i<num.length-1;i++)
            for(j=i+1;j<num.length;j++)
            {
                if(num[i]>num[j])
                {
                    k=num[i];
                    num[i]=num[j];
                    num[j]=k;
                }
            }
        System.out.println(Arrays.toString(num));
    }

}

测试截图:

插入排序:

import java.util.Arrays;
public class sort {
    public static void main(String [] args)
    {
        int []num= {1,5,6,9,8,2,3};
        int i,j,k;
        for(i=1;i<num.length;i++)
        {
            k=num[i];
            for(j=i-1;j>0&&k<num[j];j--)
            {
                num[j+1]=num[j];
            }
            num[j+1]=k;
        }
        System.out.println(Arrays.toString(num));
    }

}

测试截图:

(2)使用工具类随机生成5个数字,然后使用工具类对这5个数字排序

import java.util.Arrays;
import java.util.Random;
public class sort {
    public static void main(String [] args)
    {
        Random random=new Random();
        int []num=new int[5];
        for(int i=0;i<num.length;i++)
        {
            num[i]=random.nextInt(1000);
        }
        Arrays.sort(num);
        System.out.println(Arrays.toString(num));
    }

}

测试截图:

            

(3)自定义一个方法,当用户随便输入两个数时,便能比较大小

import java.util.*;
public class sort {
    public static void main(String [] args)
    {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入两个数:");
        int m=sc.nextInt();
        int n=sc.nextInt();
        int result=compare(m,n);
        if(result==0)
            System.out.println("两个数一样大!");
        else
             System.out.println("比较大的数是:"+result);
    }
    public static int compare(int a,int b)
    {
        int bigger;
        if(a>b)
            bigger=a;
        else if(a<b)
            bigger=b;
        else
            bigger=0;
        return bigger;
    }
}

测试结果:

      

     

     

原文地址:https://www.cnblogs.com/Lizhichengweidashen/p/13290469.html