2016-03-28 70 views
-1
private void btnSaveActionPerformed(java.awt.event.ActionEvent evt) {           
     try 
     { 
      DVD dvd = new DVD(txtTitle.getText(), 
        Integer.parseInt(txtYear.getText()), 
        true); 

      if(collection.addDVD(dvd)) 
       JOptionPane.showMessageDialog(this, "dvd added successfully"); 

基本上我需要在關閉時保存我的dvd集合,但if語句給了我無效的錯誤無法轉換爲布爾值。如果聲明錯誤,無法將void無法轉換爲布爾型

這是addDvd方法

public void addDVD(DVD inDVD) 
    { 
     dvds.add(inDVD); 
     inDVD.setID(nextID); 
     nextID++; 
    } 

因爲它是從我的老師給出的空隙addDvd方法不能被改變......

+0

如果你想顯示的消息?需要嗎? – Basilevs

+0

如果方法是'void',那麼它不能返回一個值。 –

+0

這就是爲什麼 要創建一個DVD,我們必須點擊添加按鈕,當我們添加一個子框架彈出,然後它有它需要填充的細節......然後需要保存,當我們點擊保存按鈕 但是,我們需要確保年份是數字,否則它將是一個錯誤,如果相同的DVD已經存在,那麼我們不能添加它,因爲它已經存在? –

回答

-1

你爲什麼想測試的addDVD()返回結果?你可以這樣做:

collection.addDVD(dvd); 
JOptionPane.showMessageDialog(this, "dvd added successfully"); 
+0

這就是爲什麼 要創建一個DVD,我們必須點擊添加按鈕,當我們添加一個子框架彈出,然後它有它需要填充的細節......然後需要保存,當我們點擊保存按鈕 但是,我們需要確保年份是數字,否則它將是一個錯誤,如果相同的DVD已經存在,那麼我們不能添加它,因爲它已經存在? –

+0

那麼你需要將這些檢查添加到'addDVD()'並讓它返回'boolean'。 –

-1

試試這個:

try { 
// do all the work as above 
// remove if statement 
collection.addDVD(dvd); 
JOptionPane.showMessageDialog(this, "dvd added successfully"); 
} 
catch { 
// catch the error here 
JOptionPane.showMessageDialog(this, "dvd not added successfully"); 
} 
+0

這就是爲什麼 要創建一個DVD,我們必須點擊添加按鈕,當我們添加一個子框架彈出,然後它有它需要填充的細節......然後需要保存,當我們點擊保存按鈕 但是,我們需要確保年份是數字,否則它將是一個錯誤,如果相同的DVD已經存在,那麼我們不能添加它,因爲它已經存在? –

+0

您可以創建一個函數來檢查dvd是否已經存在。例如。當你添加新的DVD時,你可以使用hashmap 。另一個用於檢查DVD是否已經添加並使該函數返回布爾值的函數 – Want2bExpert

相關問題