如何在 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.

更新于: 2020 年 6 月 20 日

1K+ 浏览

开启你的 职业之路

完成课程以获得认证

开始
广告