我是一个Java初学者,正在制作一个GUI程序,其中包含一个类似月份的下拉列表
JComboBox month;
public static String[] monthname = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};
month = new JComboBox(monthname);
我已经将其添加到框架中,并且可以正常工作。
我想为月份名称数组的每个索引分配数值。我只想实现如果用户选择月份April,如何针对April分配值4。
最佳答案
您可以创建Map
并将键值分配给月份。理想的情况是将int作为键,但是由于您想要月份的整数值,因此请执行以下操作:
Map<String, Int> months = new Hashmap <String, Int>();
months.put("january", 1);
months.put("february", 2);
...
因此,这种方式:
months.get("january");
将返回
1
。由于您的密钥是字符串,一月份也可能是
january
或JANUARY
,因此您应该将要获取的所有字符串都转换为Lowercase
。这就是为什么我在地图的关键字段上将它们小写。