让ChatGPT帮我写非业务的核心代码,无可挑剔,一次过!

发布时间 2023-04-20 16:26:29作者: 夏威夷8080

我的需求就是“把集合list当作一个圆环,循环依次取里面固定数量的元素”。

没有任何废话,我给chatgpt发的指令如下:

请用java语言帮我实现一个功能,给定一个存放人员姓名的list,再给定一个阈值数值,然后循环32次,每次的循环体里,判断阈值数值是否大于list的size,如果阈值数值大于list的size,就打印出list的所有元素,如果阈值数值小于list的size,则每次打印从前到后的阈值数值的数量的元素,如果到了list的尾部,就再转到list的头部继续适配

chatgpt也是不假思索的给出了答案,这个答案是100分的,他能精准识别人类的自然语言命令:

 1 /**
 2      * 把集合list当作一个圆环,循环依次取里面固定数量的元素
 3      * @param args
 4      */
 5     public static void main(String[] args) {
 6         List<String> names = new ArrayList<>();
 7         names.add("Alice");
 8         names.add("Bob");
 9         names.add("Charlie");
10         names.add("David");
11         names.add("Eve");
12         int threshold = 3;
13 
14         for (int i = 1; i <= 32; i++) {
15             if (threshold > names.size()) {
16                 System.out.println(names);
17             } else {
18                 int endIndex = Math.min(threshold, names.size());
19                 List<String> sublist = names.subList(0, endIndex);
20                 System.out.println(sublist);
21                 names.addAll(names.subList(0, endIndex));
22                 names.subList(0, endIndex).clear();
23             }
24         }
25     }