如何在 Java 中使用数字替换字符串?
为此,我们创建一个 HashMap 类的对象,该类在 java.util 包中定义
Map<String, String> map = new HashMap<String, String>();
该哈希映射对象将每个数字与其对应的单词表示相关联
map.put("0", "zero");
初始化一个空字符串对象。
String newstr="";
接下来,针对给定字符串的长度运行一个 for 循环,并使用 String 类的 substring() 方法提取每个字符。
通过 containsKey() 方法检查字符是否存在于映射对象中作为键。如果存在,则将其用作键,获取其在地图中的值组件并将其追加到新字符串。如果不追加字符本身到新字符串。完整代码如下
示例
import java.util.*; public class test { public static void main(String args[]) { Map<String, String> map = new HashMap<String, String>(); map.put("0", "zero"); map.put("1", "one"); map.put("2", "two"); map.put("3", "three"); map.put("4", "four"); map.put("5", "five"); map.put("6", "six"); map.put("7", "seven"); map.put("8", "eight"); map.put("9", "nine"); String s="I have 3 Networking books, 0 Database books, and 8 Programming books."; String newstr=""; for (int i=0;i<s.length();i++) { String k=s.substring(i,i+1); if (map.containsKey(k)) { String v=map.get(k); newstr=newstr+v; } else newstr=newstr+k; } System.out.println(newstr); } }
输出为所期
输出
I have three Networking books, zero Database books, and eight Programming books.
广告