随机数 文件读写 切记close文件流

来源:互联网 发布:淘宝买单反靠谱吗 编辑:程序博客网 时间:2024/06/12 05:02
package com.qidai;


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


/**
 * 5、生成10个1-100之间的随机数,并存放到一个数组中
    (1)把数组中大于等于10的数字放到一个list集合中,并打印到控制台。
    (2)把数组中小于10的数字放到一个map集合中,并打印到控制台。
    (3)把数组中的数字放到当前文件夹的number.txt文件中.
 */
public class Test5 {
/**
* 测试方法
*/
public static void main(String[] args) {
Test5 t = new Test5();

//生成10个1-100之间的随机数,并存放到一个数组中
int[] array =  t.getRandomNum();

//把数组中大于等于10的数字放到一个list集合中,并打印到控制台。
// 把数组中小于10的数字放到一个map集合中,并打印到控制台。
List list = new ArrayList<Integer>();
Map<Integer, Integer> map = new HashMap<Integer, Integer>();


int j = 0;
for(int i = 0;i<array.length;i++){
if(array[i]>=10){//把数组中大于等于10的数字放到一个list集合中
list.add(array[i]);
}else{//把数组中小于10的数字放到一个map集合中  用j做键
map.put(j,array[i]);
j++;
}
}

//打印list
System.out.println("==============list==============");
for (Object object : list) {
System.out.println(object);
}

//打印map
System.out.println("==============map==============");
for (int a = 0; a <j ; a++) {
System.out.println(map.get(new Integer(a)));
}

//(3)把数组中的数字放到当前文件夹的number.txt文件中.
System.out.println("把数组中的数字放到当前文件夹的number.txt文件中");
if(t.writeFile(array)){
System.out.println("写入成功");
}else {
System.out.println("写入失败,请检查文件路径");
}
}

/**
* 获取随机数
*/
public int[] getRandomNum(){
int [] array = new int[10];
Random r = new Random();
for(int i = 0;i<10;i++){
array[i] = r.nextInt(100)+1;
}
return array;
}


/**
* (3)把数组中的数字放到当前文件夹的number.txt文件中.
*/
public boolean writeFile(int[] array){
File file = new File(".\\number.txt");
try {
FileWriter fw= new FileWriter(file);
for (int i : array) {
fw.write(i+"\n");
}
fw.close();
return true;
} catch (IOException e) {
e.printStackTrace();
return false;
}

}
}
0 0