[英]How do I use JOptionPane.showInputDialog with a class I created?
我是Java的新手,對不起這個問題。
我創建了一個名為Age的課程,作為退休計划的一部分。 在程序的主要方法中,如何使用JOptionPane通過創建的Age類中的setStartingAge和setRetirementAge方法詢問和設置其當前年齡和期望的退休年齡。
例如,這是創建的Age類:
public class Age
{
private int yearsToRetirement;
private int STARTING_AGE;
private int RETIREMENT_AGE;
public Age()
{
STARTING_AGE = 0;
RETIREMENT_AGE = 0;
}
// Parameterized Constructor
public Age(int sa, int ra)
{
setStartingAge(sa);
setRetirementAge(ra);
}
public int getStartingAge()
{
return STARTING_AGE;
}
public int getRetirementAge()
{
return RETIREMENT_AGE;
}
public int getYearsToRetire()
{
yearsToRetirement = RETIREMENT_AGE - STARTING_AGE;
return yearsToRetirement;
}
public void setStartingAge(int sa)
{
if (sa > 0)
{
STARTING_AGE = sa;
}
else
{
STARTING_AGE = 0;
}
}
public void setRetirementAge(int ra)
{
if (ra > STARTING_AGE)
{
RETIREMENT_AGE = ra;
}
else
{
RETIREMENT_AGE = 0;
}
}
public String toString()
{
return "Starting Age: " + getStartingAge()
+ "\nRetirement Age: " + getRetirementAge()
+ "\nYears until retirement: " + getYearsToRetire();
}
}
在主要方法中,我想做類似的事情
Age age = new Age();
JOptionPane.showInputDialog("Enter your current age in years(ex: 21):");
JOptionPane.showInputDialog("Enter the age you wish to retire at:");
JOptionPane.showMessageDialog(null, age);
如何修改上述代碼以獲取兩個輸入對話框,以將用戶的輸入傳遞給Age類中的setStarting age和setRetirementAge?
-RR
JOptionPane.showInputDialog返回您輸入的字符串。 您只需要獲取此字符串並將其轉換為整數(如果可能)。
public static void main(String[] args) {
Age age = new Age();
String startingAgeAsString = JOptionPane.showInputDialog("Enter your current age in years(ex: 21):");
String retirementAgeAsString = JOptionPane.showInputDialog("Enter the age you wish to retire at:");
try {
age.setStartingAge(Integer.parseInt(startingAgeAsString));
} catch (NumberFormatException e) {}
try {
age.setRetirementAge(Integer.parseInt(retirementAgeAsString));
} catch (NumberFormatException e) {}
JOptionPane.showMessageDialog(null, age);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.