如何更改字符串的字符并检索回来

时间:2014-06-20 09:10:07

标签: java android arrays string

我需要使用存储在数组中的预定义值转换一些字符串。例如 我有一个像string[] arr = {"a=z","p=v","l=t","e=m"}这样的字符串数组 现在我从edittext获得了一些字符串:string val = et.gettext().tostring;

现在我想要的是将edittext中的值转换为存储在数组中的字符,例如,如果用户输入" apple"在编辑文本中它将转换为" apple = zvvtm;因为我在数组中定义charecters。 如果我想再显示它,那么zvvtm将转换为苹果;

1 个答案:

答案 0 :(得分:0)

以下是获取替代品的代码。同样的方法可以尝试反向。

    HashMap map=new HashMap();
    String[] arr = {"a=z","p=v","l=t","e=m"};
    String text="apple";
    for (int i = 0; i < arr.length; i++) {
        String string = arr[i];
        String replace=string.split("=")[0];
        String replaceWith=string.split("=")[1];
        map.put(replace,replaceWith);
    }
    String newString="";
    char[] chars = text.toCharArray();
    for (int i = 0; i < chars.length; i++) {
        char c = chars[i];
        if(map.keySet().contains(String.valueOf(c)))
            newString+=map.get(String.valueOf(c));
        else
            newString+=c;
    }

    System.out.println(newString);

此代码只是为了让您了解,此代码可以针对性能改进进行优化。