用Java生成随机检查作业的程序

需求:一个班级有多个学生,每个学生的作业是一个文件夹,根文件夹名称为 E:\\学生作业,在控制台每选择一次,生成顺序不同的作业排序,下面给出大致的代码,有不完善的读者可以自行进行修改。

编程要点:不是随机选择一个文件,是随机所有文件,所以会涉及到递归,虽然编程不提倡递归,但我没有想到其他的方法。


package com.redsun.util;


import java.io.File;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.Scanner;


public class Dianming {

static List<String> shifu = new ArrayList();


static void Input(int n, List list) {

static List<Integer> nn = new ArrayList<Integer>();
Random r = new Random();
System.out.println("开始请输入1");
System.out.println("结束请输入0");


Scanner sc = new Scanner(System.in);
System.out.println("请开始你的选择");
while (sc.hasNextInt()) {
int n1 = sc.nextInt();
if (n1 == 1) {
for (;;) {


int x = r.nextInt(n);


if (!nn.contains(x)) {
nn.add(x);
}
while (nn.size() == n) {
for (int j = 0; j < n; j++) {
System.out.println(list.get(nn.get(j)));
}
System.out.println("请开始你的选择");
Input(n, list);
return;


}
}


}


else if (n1 == 0) {
System.out.println("欢迎下次使用");
break;
} else {
Input(n, list);
}


}
}


public static void main(String[] args) {
File srcDir = new File("E:\\学生作业");
File[] hangge = srcDir.listFiles();
for (File file : hangge) {


shifu.add(file.getName());
}
int n = shifu.size();
System.out.println(n);
if (n == 0) {
System.out.println("请放几个文件进去!");
} else {
Input(n, shifu);
}


}


}


猜你喜欢

转载自blog.csdn.net/qq_34520606/article/details/78640774