问答详情
源自:4-5 学生选课---添加课程 Ⅱ

关于list的难题

从键盘输入一行内容:老王 老赵 老焦 老郑 老吴 老刘 老张 小明

定义一个list,把上面输入的一行内容分开并逐个添加到list

① 把这8个元素随机分4组(可以存放到4个新的list集合中),并打印结果。

② 设计一个能从分组快速找到小明的方法。


提问者:qq_矮油不绰_0 2018-02-06 17:51

个回答

  • qq_嘿嘿_60
    2018-02-06 20:53:21
    已采纳

    import java.util.ArrayList;

    import java.util.List;

    import java.util.Random;

    import java.util.Scanner;


    public class Practice1 {

    /**

    * 从键盘输入一行内容:老王 老赵 老焦 老郑 老吴 老刘 老张 小明

    * 定义一个list,把上面输入的一行内容分开并逐个添加到list

    * ① 把这8个元素随机分4组(可以存放到4个新的list集合中),并打印结果。

    * ② 设计一个能从分组快速找到小明的方法。

    * @param args

    */

    public static void main(String[] args) {

    Random random = new Random();

    List<String> list_names = new ArrayList<String>();

    List<String> list_names1 = new ArrayList<String>();

    List<String> list_names2 = new ArrayList<String>();

    List<String> list_names3 = new ArrayList<String>();

    List<String> list_names4 = new ArrayList<String>();

    String getString = "";

    Scanner console = new Scanner(System.in);

    System.out.println("请输入:");

    getString = console.nextLine();

    String[] arrayNames = getString.split(" ");

    for(int i=0;i<arrayNames.length;i++) {

    list_names.add(arrayNames[i]);

    }

    int listLength1 = random.nextInt(8);

    int listLength2 = random.nextInt(8-listLength1);

    int listLength3 = random.nextInt(8-listLength1-listLength2);

    int listLength4 = 8-listLength1-listLength2-listLength3;

    int x=0;

    int i=0;

    while(i<listLength1) {

    list_names1.add(list_names.get(x));

    i++;

    x++;

    }

    i=0;

    while(i<listLength2) {

    list_names2.add(list_names.get(x));

    i++;

    x++;

    }

    i=0;

    while(i<listLength3) {

    list_names3.add(list_names.get(x));

    i++;

    x++;

    }

    i=0;

    while(i<listLength4) {

    list_names4.add(list_names.get(x));

    i++;

    x++;

    }

    for (String string : list_names1) {

    System.out.println("list_names1:"+string);

    }

    for (String string : list_names2) {

    System.out.println("list_names2:"+string);

    }

    for (String string : list_names3) {

    System.out.println("list_names3:"+string);

    }

    for (String string : list_names4) {

    System.out.println("list_names4:"+string);

    }

    }

    }