Use asList to create a list from array

Metadata

ID: java-best-practices/arrays-aslist

Language: Java

Severity: Warning

Category: Performance

Description

Using Arrays.asList is much faster and cleaner than creating an array by iterating over the values.

Non-Compliant Code Examples

class Main {
    public List<Integer> getListOfSomething() {
        List<Integer> myList = new ArrayList<>();
        Integer[] myArray = getArrayFromCall();
        
        foo();
        for (int i = 0; i < myArray.length; i++) {
            myList.add(myArray[i]);
        }
        return myList;
    }
}
class Main {
    public List<Integer> getListOfSomething() {
        Integer[] myArray = getArrayFromCall();
        List<Integer> myList = new ArrayList<>();
        foo();
        for (int i = 0; i < myArray.length; i++) {
            myList.add(myArray[i]);
        }
        return myList;
    }
}

Compliant Code Examples

class Main {
    public List<Integer> getListOfSomething() {
        Integer[] myArray = getArrayFromCall();
        return Arrays.asList(myArray);
    }
}
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Analysis

PREVIEWING: may/unit-testing