Я занимаюсь продажей билетов на поезд. Я хочу преобразовать определенный текст в массиве строк в определенную цену с помощью JOptionPane.
напр.
String[] option_1 = {"location1","location2", "location3","location4","location5"};
где местоположение1 = 10 долларов США, местоположение2 = 23 доллара США и т. д.
все, что я знаю, это то, что я мог бы использовать Interger.parseInt или double, но я не знаю, что делать дальше. Должен ли я использовать цикл или создать совершенно новый массив и сделать его равным массиву строк. Мне интересно, есть ли более простой способ выполнить это.
код :
public static void main (String [] args) {
String name;
String[] option_1 = {"North Avenue","Quezon Avenue", "Kamuning","Cubao","Santolan","Ortigas","Shaw","Boni","Guadalupe","Buendia","Ayala","Magallanes","Taft"};
String[] option_2 = {"North Avenue","Quezon Avenue", "Kamuning","Cubao","Santolan","Ortigas","Shaw","Boni","Guadalupe","Buendia","Ayala","Magallanes","Taft"};
name = JOptionPane.showInputDialog("Welcome to DME Ticketing System!\n\nEnter your name:");
String leave = (String)JOptionPane.showInputDialog(null, "Leaving from",
"Train Station", JOptionPane.QUESTION_MESSAGE, null, option_1, option_1[0]);
String going = (String)JOptionPane.showInputDialog(null, "Leaving from",
"Train Station", JOptionPane.QUESTION_MESSAGE, null, option_2, option_2[0]);
// int pay = (Integer)JOptionPane.showInputDialog(null, "From: "+leave+"\nTo: "+going+"\nFare Price: "+"\n\nEnter your payment amount:",
// null, JOptionPane.PLAIN_MESSAGE, null, null,null);
// int op1 = Integer.parseInt(going);
// int op2 = Integer.parseInt(leave);
JOptionPane.showMessageDialog(null, "DME Ticketing System\nMalolos, Bulacan\n\n"
+ "Name: "+name
+"\nLocation: "+leave
+"\nDestination: "+going
+"\nFare: "
+"\nPayment: "//+pay
+"\nChange: "
, "RECEIPT",JOptionPane.INFORMATION_MESSAGE);
}
- Коды, которые я превратил в комментарии, выдают мне ошибки
Я считаю, что это поможет: Создание графического интерфейса с помощью JFC/Swing
Вводит ли пользователь сумму платежа? Я спрашиваю об этом, потому что в ваших комментариях кажется, что
JOptionPane
запрашивает оплату у пользователя. Если, с другой стороны, вы пытаетесь сопоставить местоположения (String
s) с их значением (int
s), тогда должно быть достаточноHashMap<String,Integer>
(или, возможно, некоторых массивов или списков).Да, пользователь будет вводить сумму платежа, потому что я буду рассчитывать сдачу в квитанции. И спасибо, я буду пробовать эти методы.