簡體   English   中英

源1.6不支持Java Combo Box Diamond運算符

[英]Java Combo Box Diamond Operator not supported in source 1.6

背景

我開發了一個程序來處理數據庫中的數據。 但是,那不是我的問題,所以我將直接指出。

我在JFrame上創建了一個名為“輸出重新格式化的數據文件”的組合框。 組合框應允許用戶選擇特定的月份,以便該程序對在2016年2月創建的文件進行過濾搜索。

問題

選項當然是一年中的幾個月。 我的問題是initComponents()方法中的代碼,該組合框的下划線為“紅色錯誤”!

該錯誤顯示:“源1.6不支持鑽石運算符,請使用源1.7或更高版本”。

我不明白的

我認為源1.6對應於您擁有的JDK。 因此,可以肯定的是,只有JDK 1.6才有源1.6。 但是擁有JDK 1.8和Netbeans 8.0.2,那么Netbeans為何說我使用源代碼1.6?

我真的很感謝任何向我解釋這個問題的人,因為我已經有近兩個月的時間了。 同時,我也會做更多自己的研究。

初始化組件

jLabel4.setFont(new java.awt.Font("Tahoma", 1, 13)); // NOI18N
    jLabel4.setText("Month");
    jLabel4.setToolTipText("");

    Month_ComboBox.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" }));
    Month_ComboBox.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            Month_ComboBoxActionPerformed(evt);
        }
    });

組合框定制代碼

我認為源1.6對應於您擁有的JDK。 因此,可以肯定的是,只有JDK 1.6才有源1.6。 但是擁有JDK 1.8和Netbeans 8.0.2,那么Netbeans為何說我使用源代碼1.6?

嗯,不完全-它對應於您的源代碼被編譯為的語言版本。 較晚的編譯器能夠只有較早版本的編譯器一樣進行編譯非常正常的,因此,如果團隊中的多個人具有不同的版本,則不會出現一個人將代碼檢入到另一個人的情況。無法編譯。

只需更改項目設置以使用1.8的源兼容性級別即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM