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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© doudouchiyula 中级黑马   /  2016-4-1 16:09  /  476 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

假设原数组长度为10,从数组中随机抽取3个数,然后从剩余的数中再抽取3个数,如何码代码实现?请大师指点

1 个回复

倒序浏览
  1. package com.heima.demo;

  2. import java.util.ArrayList;
  3. import java.util.Random;

  4. public class Demo {

  5.         public static void main(String[] args) {
  6.                 int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
  7.                 ArrayList<Integer> al = new ArrayList<>();
  8.                 Random r = new Random();
  9.                 int index;
  10.                 for(int x = 0; x < 3; x++) {
  11.                         index = r.nextInt(arr.length); //数组角标索引   [0, 10)
  12.                         if(al.contains(index)) {
  13.                                 x--;
  14.                         }else {
  15.                                 al.add(index);
  16.                                 System.out.println(arr[index]);
  17.                         }
  18.                 }
  19.                 System.out.println("---------------------");
  20.                 for(int x = 0; x < 3; x++) {
  21.                         index = r.nextInt(arr.length); //[0, 10)
  22.                         if(al.contains(index)) {
  23.                                 x--;
  24.                         }else {
  25.                                 al.add(index);
  26.                                 System.out.println(arr[index]);
  27.                         }
  28.                 }
  29.         }
  30. }
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马