Use of array of zero length

后端 未结 3 1231
梦毁少年i
梦毁少年i 2020-11-28 10:19

For example we can construct such an array like this:

 new ElementType[0];

I seen such a construct, but I don\'t understand why this might

3条回答
  •  暖寄归人
    2020-11-28 11:09

    An example. Say, you have a function

    public String[] getFileNames(String criteria) {
    

    to get some filenames. Imagine that you don't find any filenames satisfying criteria. What do you return? You have 2 choices - either return null, or 0-sized array.

    The variant with 0-sized array is better, because your caller doesn't need to check for NULL and can process the array in a consistent way - say, in a loop (which would be empty in this case).

    There's a chapter on this in Effective Java, Item 27

提交回复
热议问题