如何将String值转换为变量名(java)?

时间:2015-07-29 14:16:32

标签: java arrays arraylist collections

我正在尝试找到一种将String值转换为变量的方法。这可能吗?

例如:

String str = "chicken";
/*Then have it so I can do this*/
int chicken = 2;

我知道我可以输入变量名,但是我想要它,这样一个用户输入,即一个String,可以在单击一个按钮后转换为变量名。 这就是我的意思:

/*This is in JavaFX*/
Button button = new Button("Click Me");
TextField userText = new TextField();
ArrayList<List> randomList = new ArrayList<>();

/*When button is clicked*/
button.setOnAction(e -> {
    ArrayList<List> "The user's text" = new ArrayList<>();
    randomList.add("The user's text");
});

&#34;用户的文字&#34;是用作输入的用户输入。

P.S。 =除非没有其他办法,否则请不要推荐HashMaps或地图。我已经开始使用ArrayLists了。

1 个答案:

答案 0 :(得分:0)

如果我们理解你想要完成的事情,我想我们可以更好地帮助你。没有它,我会建议使用一个对象。使用Map是另一种选择,但一般情况下它会降低您的代码的可读性,如果您的结构发生变化,维护Map将更加困难。

public class UserData {
    private String userInput;
    private List<List<?>> data = new ArrayList<>();

    // Getters and Setters
}

然后像这样使用它:

/*When button is clicked*/
button.setOnAction(e -> {
    UserData userData = new UserData();
    userData.setUserInput("The user's text");
    randomList.add(userData);
});