java - 如何将字符串的字符与数组的索引相匹配

标签 java arrays string loops char

我有一个由数字组成的字符串,我想将其与单词数组的内容进行匹配。

输入字符串中的每个字符都与单词数组中的位置匹配。

如果我在 if 语句之前打印出 ij 的值,它们是正确的,0 和 03 和 3 等。但是,下面的循环永远不会进入 if 语句。请帮我理解为什么。

String input = "0356";
String[] words = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};
String[] result = new String[4];

for (int i = 0; i < input.length(); i++) {
    for (int j = 0; j < words.length; j++) {
        if (Character.toString(input.charAt(i)) == Integer.toString(j)) {
            result[i] = words[j];
        }   
    }
}

我正在寻找的结果:

result[] = {"zero","three","five","six"}

最佳答案

比较字符串时,需要使用equals()而不是==

所以改变

if (Character.toString(input.charAt(i)) == Integer.toString(j))

if (Character.toString(input.charAt(i)).equals(Integer.toString(j)))

关于java - 如何将字符串的字符与数组的索引相匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51569932/

相关文章:

java - Spring MVC @ResponseBody 返回一个列表

java - 如何避免 Mockito 和 PowerMockito 之间的冲突?

java - 如何将 FloatingActionButton 放到 Fragment 中?

java - 唯一的字数组

c - 在 C 中从键盘读取 3 个字符串,但打印时只得到两个字符串?

java - 是否可以配置 Reportng,以显示同一测试方法上多次执行的输出

c# - 保留录制视频的最后 X 分钟

ruby Array.inspect 与 Array[element].to_s

python - 如何使用模块 re 从数据帧的列中删除特殊字符?

string - Groovy GStringImpl 和字符串行为