gpt4 book ai didi

java - 用 HashMap 中的值替换字符串值

转载 作者:搜寻专家 更新时间:2023-11-01 03:58:24 24 4
gpt4 key购买 nike

我是 Java 编程的新手。我创建了一个 HashMap ,其中包含我的键值对,用于将用户输入替换为与相应键对应的值。

        HashMap<String,String> questionKey = new HashMap<>();             

for (item : itemSet()) {
questionKey.put(String.valueOf(item.getOrder()+1), item.getKey());
}
String list = commandObject.getObjectItem().getList();

if (list.contains("q")){
list.replaceAll("q01", questionKey.get("1"));
commandObject.getObjectItem().setList(list);
}

我在公式评估中使用它

注意:给用户一个特定公式的输入方式(value1 + value2 + value3)

我把它 (value1 value2 value3) 转换成 (value1key value2key value3key)

更新:

我现在理解得更好的问题旨在帮助更好地理解如何利用 HashMap 来评估用户输入。更明确的问题是

评估表达式的最佳方法是什么,即

用户输入 = "var1 + var2"

期望值:valueOf(var1) + valueOf(var2)

?

最佳答案

@Test
public void testSomething() {
String str = "Hello ${myKey1}, welcome to Stack Overflow. Have a nice ${myKey2}";
Map<String, String> map = new HashMap<String, String>();
map.put("myKey1", "DD84");
map.put("myKey2", "day");
for (Map.Entry<String, String> entry : map.entrySet()) {
str = str.replace("${" + entry.getKey() + "}", entry.getValue());
}
System.out.println(str);
}

输出:

您好 DD84,欢迎来到 Stack Overflow。祝你有美好的一天

对于更复杂的东西,我宁愿使用 OGNL .

关于java - 用 HashMap 中的值替换字符串值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18601011/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com