Reports code that uses a loop to copy the contents of an array into a collection.

A shorter and potentially faster (depending on the collection implementation) way to do this is using Collection.addAll(Arrays.asList()) or Collections.addAll().

Only loops without additional statements inside are reported.

Example:


  void addAll(List<String> list, String[] arr) {
    for (int i = 0; i < arr.length; i++) {
      String s = arr[i];
      list.add(s);
    }
  }

After the quick-fix is applied:


  void addAll(List<String> list, String[] arr) {
    Collections.addAll(list, arr);
  }