空の配列をインスタンス化するには、次の 2 つの表記法のうちどちらが最適かを判断します。
Object[] emptyArray = new Object[] {};
Object[] emptyArray = new Object[0];
それらはコンパイラにとってまったく同じですか?一方が他方よりはっきりと見えますか?
私は好奇心から尋ねているだけです: 私はそれが私のプログラムに影響を与えないことをよく知っています
それらはコンパイラにとってまったく同じですか?
はい。どちらも同じバイトコードになります。
Object[] emptyArray = new Object[] {};
0: iconst_0
1: anewarray #3 // class java/lang/Object
4: astore_1
Object[] emptyArray1 = new Object[0];
5: iconst_0
6: anewarray #3 // class java/lang/Object
9: astore_2
10: return
一方が他方よりはっきりと見えますか?
それは無限の議論につながる可能性があるため、おそらくSOのトピックから外れています:)
私はnew Object[0];
読みやすいと思いますが、他の人は反対するかもしれません.