用哈希表中的值替换字符串值 [英] Replace String values with value in Hash Map

查看:79
本文介绍了用哈希表中的值替换字符串值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是Java编程新手。我已经创建了一个哈希映射,其中包含我的键值对,以用于用对应于相应键的值替换用户输入。



  HashMap< String,String> questionKey = new HashMap<>(); (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)

I' m将此值(value1 value2 value3)转换为(value1key value2key value3key)

更新:

问题,因为我现在更好地理解它是为了帮助更好地理解如何利用hashmap来评估用户输入。更明确的问题是

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

用户输入= var1 + var2

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

p>

解决方案

  import java.util.HashMap; 

class程序
{
public static void main(String [] args)
{
String pattern =Q01 + Q02;
String result =;

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

vals.put(Q01,123);
vals.put(Q02,123);

for(HashMap.Entry< String,String> val:vals.entrySet())
{
result = pattern.replace(val.getKey(),val.getValue ());
pattern = result;
}

System.out.println(result);

}
}


I'm new to Java Programming. I have created a hash map that contains my Key Value pairs to utilize in replacing user input with the value corresponding to the respective key.

i.e.

        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);
        }             

I am using this in a formula evaluation

Note: Users are given a certain formula specific way of entry (value1 + value2 + value3)

I'm taking that (value1 value2 value3) and converting it to (value1key value2key value3key)

Update:

The Question as I understand it better now was meant to be to help better understand how to utilize a hashmap in order to evaluate user input. The more clear question would be

What would be the best approach to evaluate an expression i.e.

User Input = "var1 + var2"

Expected Value: valueOf(var1) + valueOf(var2)

?

解决方案

import java.util.HashMap;

class Program
{
    public static void main(String[] args)
    {
        String pattern = "Q01 + Q02";
        String result = "";

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

        vals.put("Q01", "123");
        vals.put("Q02", "123");

        for(HashMap.Entry<String, String> val : vals.entrySet())
        {
            result = pattern.replace(val.getKey(), val.getValue());
            pattern = result;
        }

        System.out.println(result);

    }
}

这篇关于用哈希表中的值替换字符串值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆