首页 > 解决方案 > 用字符串调用对象 - Java

问题描述

用作数据库的文本文件,格式如下

btnBar/Cafe/3.5
btnBar_0/Bebida/1.0
btnBar_1/Sumo/2.0
  ^       ^    ^
  |       |    |
btn var |text|price

图形用户界面:
图片

    InputStream is = MainWindow.class.getResourceAsStream("DB.txt");
    Scanner sc = new Scanner(is)

使用它,而扫描仪有下一行,它必须设置每个 gui 按钮名称、价格......我应该使用什么方法?

标签: javaswingjbutton

解决方案


在你的情况下想创建一个Map<String, JButton>这样的:

Map<String, JButton> buttons = new HashMap<>();
buttons.put("btn1", button1);
buttons.put("btn2", button2);
buttons.put("btn3", button3);

然后,如果您想获得具有名称的按钮,您可以使用:

String desiredString = "btn2";
buttons.get(desiredString). //Your action here

推荐阅读