数字换字母
问题描述
给定一个长度为 1010 的字符串 SS,它包含 1010 个小写英文字母,依次对应数字 00 到 99。
举个例子,SS 为 abcdefghij
,其中:
a
对应数字 00b
对应数字 11c
对应数字 22- ……
j
对应数字 99
现在,给定另一个字符串 TT,它由数字和小写英文字母组成。 你的任务是将字符串 TT 中的所有数字,按照 SS 中定义的对应关系,替换为字母,并输出替换后的字符串。
输入格式
输入包含两行:
第一行包含一个长度为 1010 的字符串 SS,由 1010 个小写英文字母组成,表示数字 00 到 99 的对应关系。
第二行包含一个字符串 TT,由数字和小写英文字母组成,长度不超过 10001000。
输出格式
输出一个字符串,即按照 SS 中定义的对应关系将 TT 中的数字替换为字母后的结果。
样例输入
abcdefghij
1a2b3c
样例输出
bacbdc
import java.util.Scanner;
public class Main76 {
public static void main(String[] args) {
// 数字换字母
Scanner scanner = new Scanner(System.in);
String s1 = scanner.next();
String s2 = scanner.next();
char[] chars1 = s1.toCharArray();
char[] chars2 = s2.toCharArray();
int index = 0;
for (int i = 0; i < chars2.length; i++) {
if (chars2[i] >= '0' && chars2[i] <= '9') {
//如果为数字
index = chars2[i] - '0';
System.out.print(chars1[index]);
}else {
System.out.print(chars2[i]);
}
}
}
}