import java.util.ArrayList; import java.util.List; /** * 随机得到10个数字<br> * 平且这10个数字都是0~9之间<br> * 这10个数字不会重复 * @author spring sky<br> * Data:2012年3月6日 22:17:14 * Email:vipa1888@163.com * */ public class Number { /** * 递归得到随机数字 * @param list * @return */ public List<Integer> get(List<Integer> list) { if(list==null) { list = new ArrayList<Integer>(); } if(list.size()<10) { int a = (int) (Math.random()*10); if(!check(list, a)) { list.add(a); } get(list); } return list; } /** * 检验List是否已经存在了 * @param list * @param a * @return */ public boolean check(List<Integer> list,int a) { boolean b = false; for (int j = 0; j < list.size(); j++) { if(a == list.get(j)) { b = true; break; } } return b; } /** * 升序降序 * @param os */ public static void toArray(int[] os){ for (int i = 0; i < os.length; i++) { for(int j=0;j<os.length-i-1;j++){ if(os[j]<os[j+1]){ int temp=os[j]; os[j]=os[j+1]; os[j+1]=temp; } } } System.out.print("降序得到的数字:"); for (int i = 0; i < os.length; i++) { System.out.print(os[i]); System.out.print(" "); } for (int i = 0; i < os.length; i++) { for(int j=0;j<os.length-i-1;j++){ if(os[j]>os[j+1]){ int temp=os[j]; os[j]=os[j+1]; os[j+1]=temp; } } } System.out.println(); System.out.print("降序得到的数字:"); for (int i = 0; i < os.length; i++) { System.out.print(os[i]); System.out.print(" "); } } /** * 测试随机的结果 * @param args */ public static void main(String[] args) { List<Integer> myList = null; Number n = new Number(); List<Integer> list = n.get(myList); int[] ints = new int[list.size()]; System.out.print("随机得到的数字:"); for (int i = 0; i < list.size(); i++) { int aa = list.get(i); ints[i] = aa; System.out.print(aa); System.out.print(" "); } System.out.println(); toArray(ints); } }
大家用的时候,直接run就可以了! 如果有更好的,可以给我提供参考,谢谢了哦!