मैंने अपने जावा कोड में अनियंत्रित चेतावनियाँ दिखाने के लिए नेटबीन्स सेट किया है, लेकिन मैं निम्नलिखित पंक्तियों पर त्रुटि को समझने में असफल रहा हूँ:
private List<String> cocNumbers;
private List<String> vatNumbers;
private List<String> ibans;
private List<String> banks;
...
List<List<String>> combinations = Utils.createCombinations(cocNumbers, vatNumbers, ibans);
देता है:
[unchecked] unchecked generic array creation for varargs parameter of type List<String>[]
विधि स्रोत:
/**
* Returns a list of all possible combinations of the entered array of lists.
*
* Example: [["A", "B"], ["0", "1", "2"]]
* Returns: [["A", "0"], ["A", "1"], ["A", "2"], ["B", "0"], ["B", "1"], ["B", "2"]]
*
* @param <T> The type parameter
* @param elements An array of lists
* @return All possible combinations of the entered lists
*/
public static <T> List<List<T>> createCombinations(List<T>... elements) {
List<List<T>> returnLists = new ArrayList<>();
int[] indices = new int[elements.length];
for (int i = 0; i < indices.length; i++) {
indices[i] = 0;
}
returnLists.add(generateCombination(indices, elements));
while (returnLists.size() < countCombinations(elements)) {
gotoNextIndex(indices, elements);
returnLists.add(generateCombination(indices, elements));
}
return returnLists;
}
क्या वास्तव में गलत हो रहा है और मैं इसे कैसे ठीक करूंगा, क्योंकि मुझे लगता है कि कोड में अनियंत्रित चेतावनी छोड़ना एक अच्छा विचार नहीं है?
उल्लेख करना भूल गया, लेकिन मैं जावा 7 का उपयोग कर रहा हूं।
संपादित करें : इसके अलावा अब मैं देखता हूं कि विधि निम्नलिखित है:
[unchecked] Possible heap pollution from parameterized vararg type List<T>
where T is a type-variable:
T extends Object declared in method <T>createCombinations(List<T>...)