Java中的钻石操作符是什么?
我有一个types为patient_class的数组列表,而数组列表types已经用黄色下划线,IDE提到了“新expression式中的冗余types参数(使用菱形运算符)”。
我的问题是:我应该使用钻石运算符吗? 这是必须的吗? 将logging存储到数组列表时,会出现数据丢失或其他问题吗?
这是我的数据列表:
public class Register_newpatient extends javax.swing.JFrame { public Register_newpatient() { initComponents(); groupbutton(); } public void groupbutton() { ButtonGroup bg1=new ButtonGroup(); bg1.add(rbopd); bg1.add(rbinpatientcare); bg1.add(rbboth); } all_error_handling checkerror = new all_error_handling(); JFrame frame = new JFrame(); static ArrayList<patient_class>patientlist = new ArrayList<patient_class>();
说实话,我不知道什么是钻石经营者。
别担心 这不是一个邪恶的。 这是Java 7的特性。
钻石算子的目的是简化generics类的实例化。
例如,而不是
List<Map<Integer,Set<String>>> p = new ArrayList<Map<Integer,Set<String>>>();
与钻石操作员,我们只能写
List<Map<Integer,Set<String>>> p = new ArrayList<>();
如果您想了解更多信息并想使用它,请快速浏览一下,然后决定它是否对您有用。
钻石操作符用于指定要在“集合”中使用的数据types。
例如, ArrayList<String> list = new ArrayList<String>()
。
在Java 7中,我们可以消除类似于:
ArrayList<String> list = new ArrayList<>()