黑马程序员技术交流社区

标题: 第二题(接上贴) [打印本页]

作者: kuaiyi    时间: 2017-8-5 11:30
标题: 第二题(接上贴)
[Java] 纯文本查看 复制代码
package fa;

import java.util.*;

/*
* 创建一个list集合,提示用户输入5个数字,然后将这5个数字存放在list集合中
a.        将list集合中的元素按降序排序后存放进数组中。
b.        提示用户输入任意一个数字,然后根据数组当前顺序插入数组中,其他数字顺延,最后一位删除,
最后打印出插入后数组中的所有元素
比如:数组元素为[8,7,5,3,3],如果输入的是4则是[8,7,5,4,3],如果输入的是2则数组不变)
*/
public class test2 {
        static ArrayList<Integer>a=new ArrayList<Integer>();
        static int[] ii;
static         public void paixu(ArrayList<Integer>a){
                for(int i=1;i<a.size();i++){
                        for(int j=0;j<a.size()-i;j++){
                                if(a.get(j)<a.get(j+1)){
                                int temp=        a.get(j);
                                a.set(j,a.get(j+1));
                                        a.set(j+1, temp);
                                }
                        }
                }
                ii=new int[a.size()];
                for(int i=0;i<a.size();i++){
                        ii=a.get(i);
                }
        }
       
        public static void charu(int []i,int x)//将用户输入数据,按数组当前顺序插入,其他数字顺延
        {
        if(x>i[i.length-1]){
                int temp=0;int k=0;int num=0;
                for(int jj=0;jj<i.length;jj++ ){
                       
                       
                         if((i[jj]<x)){
                                 num++;
                                 
                               
                                 if(num==1){
                                         temp=i[jj];
                                i[jj]=x;}
                                 else{
                                         k=temp;
                                        temp=i[jj];
                                i[jj]=k;
                               
                                 }
                               
                        }
                       
                       
                }
        }
        }
       
public static void main(String[]args){
        Scanner s=new Scanner(System.in);
       
        System.out.println("用户输入5个数字");
        for(int i=0;i<5;i++){
        int n=s.nextInt();
        a.add(n);
       
        }
        paixu(a);
        System.out.println("用户输入任意一个数字");
        int n2=s.nextInt();
        charu(ii,n2);
        for(int j:ii){
        System.out.println(j);}
}

}





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2