这两行代码有什么区别?我一直在使用第一个,但我不知道为什么。我不知道哪一个是正确的,因为netbeans没有给我一个错误(我还没编译)。
ArrayList<String> test = new ArrayList<>();
ArrayList test2 = new ArrayList<String>();
答案 0 :(得分:2)
第二个是错误,因为你放弃了通用。
第一个只是简写:
ArrayList<String> test = new ArrayList<String>();
如果您有列表地图,则会产生更大的差异:
HashMap<String, ArrayList<Integer>> map = new HashMap<String, ArrayList<Integer>>();
HashMap<String, ArrayList<Integer>> map = new HashMap<>(); // much nicer