A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

3.产生10个1-100的随机数,并放到一个数组中
                (1)把数组中大于等于10的数字放到一个list集合中,并打印到控制台。
                (2)把数组中小于10的数字放到一个map集合中,并打印到控制台。
                (3)把数组中的数字放到当前文件夹的D://number.txt文件中*/
               

3 个回复

正序浏览
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Random;
public class dianzhao2kuozhan {

/*3.产生10个1-100的随机数,并放到一个数组中
(1)把数组中大于等于10的数字放到一个list集合中,并打印到控制台。
(2)把数组中小于10的数字放到一个map集合中,并打印到控制台。
(3)把数组中的数字放到当前文件夹的number.txt文件中*/
       
public static void main(String[] args) throws Exception {
                ArrayList<Integer> str =new ArrayList<Integer>();
                int[] number=new int[10];
                for (int i = 0; i < 10; i++) {
                        Random  random =new Random();
                        int randomNumber=random.nextInt(100)+1;
                        number[i]=randomNumber;
                        if(number[i]>=10){
                                str.add(number[i]);
                                }
                }
                        System.out.println(str);
                        //给定一个不同的key值,将小于10的数字放在Map集合中
                        HashMap<Integer,Integer> mapping=new HashMap<Integer,Integer>();
                        int count=0;
                        for (Integer thisNum : number) {
                                if(thisNum<10)
                                        mapping.put(count++, thisNum);
                        }
                       
                        System.out.println(mapping);
                        BufferedWriter fw = new BufferedWriter(new FileWriter("number.txt"));
                        for (int thisnumber: number) {
                                fw.write(thisnumber+"");
                                fw.newLine();
                               
                        }
                        fw.close();
                        ArrayList<Integer> list =new ArrayList<Integer>();
                        for (int i = 0; i < number.length; i++) {
                                boolean it=list.contains(number[i]);
                 if(it==false){
                        list.add(number[i]);
                       
                 }
                        }
                        System.out.println(list);
        }
               
}


去除重复数
回复 使用道具 举报

package cn.itcast.javaee;

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;

public class Demo02 {
        public static void main(String[] args) throws Exception {
        /*        3.产生10个1-100的随机数,并放到一个数组中
                (1)把数组中大于等于10的数字放到一个list集合中,并打印到控制台。
                (2)把数组中小于10的数字放到一个map集合中,并打印到控制台。
                (3)把数组中的数字放到当前文件夹的D://number.txt文件中*/
               
                // 需求: 去除数组中重复的数字
                // --->第一:HashSet   问题:数字会无序
        //--> 再搞一个List  1.遍历数组  2.list.contains()  包含不包含这个元素  -->
                                                           //如果包含         不添加
                                                           //如果不包含     添加
               
                int [] arr = new int [10];
                for(int x = 0 ;x < 10; x++){
                        int random = new Random().nextInt(100) + 1;//生成0-99 的数     要求是1-100所以+1
                        arr[x] = random;   //将随机数赋值给数组  
                }
        putValueToList(arr);
        writeArrToFile(arr);
        
        }

        private static void writeArrToFile(int[] arr) throws Exception {
               
                BufferedWriter bw = new BufferedWriter(new FileWriter("D:\\number.txt"));
                for (int temp : arr) {
                        bw.write(temp+"");// 数字+ 字符串 ---> 变成字符串,也能用toString()方法
                }
                bw.close();
        }

        private static void putValueToList(int[] arr) {
                List<Integer> list = new ArrayList<Integer>();
                Map<Integer,Integer> map = new HashMap<Integer,Integer>();
               
                int count = 0;
                for(int temp : arr){
                        if(temp < 10){
                                //遍历出来的数字小于10
                                map.put(++count,temp);
                        }else{
                                //遍历出来的数字大于10
                                list.add(temp);        
                        }
                        
                }
               
        }
}
回复 使用道具 举报
package cn.itcast.javaee;

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;

public class Demo02 {
        public static void main(String[] args) throws Exception {
        /*        3.产生10个1-100的随机数,并放到一个数组中
                (1)把数组中大于等于10的数字放到一个list集合中,并打印到控制台。
                (2)把数组中小于10的数字放到一个map集合中,并打印到控制台。
                (3)把数组中的数字放到当前文件夹的D://number.txt文件中*/
               
                // 需求: 去除数组中重复的数字
                // --->第一:HashSet   问题:数字会无序
        //--> 再搞一个List  1.遍历数组  2.list.contains()  包含不包含这个元素  -->
                                                           //如果包含         不添加
                                                           //如果不包含     添加
               
                int [] arr = new int [10];
                for(int x = 0 ;x < 10; x++){
                        int random = new Random().nextInt(100) + 1;//生成0-99 的数     要求是1-100所以+1
                        arr[x] = random;   //将随机数赋值给数组  
                }
        putValueToList(arr);
        writeArrToFile(arr);
        
        }

        private static void writeArrToFile(int[] arr) throws Exception {
               
                BufferedWriter bw = new BufferedWriter(new FileWriter("D:\\number.txt"));
                for (int temp : arr) {
                        bw.write(temp+"");// 数字+ 字符串 ---> 变成字符串,也能用toString()方法
                }
                bw.close();
        }

        private static void putValueToList(int[] arr) {
                List<Integer> list = new ArrayList<Integer>();
                Map<Integer,Integer> map = new HashMap<Integer,Integer>();
               
                int count = 0;
                for(int temp : arr){
                        if(temp < 10){
                                //遍历出来的数字小于10
                                map.put(++count,temp);
                        }else{
                                //遍历出来的数字大于10
                                list.add(temp);       
                        }
                       
                }
               
        }
}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马