回答編集履歴

1

追記

2021/08/16 12:09

投稿

kazuma-s
kazuma-s

スコア8224

test CHANGED
@@ -35,3 +35,53 @@
35
35
  }
36
36
 
37
37
  ```
38
+
39
+ **追記**
40
+
41
+ 呼び出し元の List<String> に結果を入れて返したいのなら、
42
+
43
+ PrintPath の中で new してはいけません。
44
+
45
+ ```java
46
+
47
+ import java.io.File;
48
+
49
+ import java.util.List;
50
+
51
+ import java.util.ArrayList;
52
+
53
+
54
+
55
+ class Main {
56
+
57
+ public static void PrintPath(String path, List<String> data) {
58
+
59
+ File[] lf = new File(path).listFiles();
60
+
61
+ data.clear();
62
+
63
+ for (File f : lf)
64
+
65
+ data.add(f.toString());
66
+
67
+ for (int i = 0; i < data.size(); i++)
68
+
69
+ System.out.println(i + ": " + data.get(i));
70
+
71
+ }
72
+
73
+
74
+
75
+ public static void main(String[] args) {
76
+
77
+ List<String> data = new ArrayList<>();
78
+
79
+ PrintPath(".", data);
80
+
81
+ System.out.println(data);
82
+
83
+ }
84
+
85
+ }
86
+
87
+ ```