次のコードがあるとします。
public static ArrayList<Integer> doSomething(int n) {
ArrayList<Integer> list = new ArrayList<Integer>();
if (n <= 0)
return list ;
list = ListMethods.doSomething(n - 1);
list.add(n);
return list;
これはこのコードよりも遅いですか:
public static ArrayList<Integer> doSomething(int n) {
ArrayList<Integer> list = null;
if (n <= 0)
return list = new ArrayList<Integer>();
list = ListMethods.doSomething(n - 1);
list.add(n);
return list;
私の講師の 1 人がノートで後者のコードを使用しているのに対し、オンラインで他のガイドが前者を使用しているのを見たので、質問します。個人的な好みですか、それとも速度の違いはありますか? また、速度差があるとすれば、気にならないほど小さいのでしょうか?