我有一个[1, 7, 2, 21, 18, 25, 3, 18, 25, 4, 1, 4]
一个单词列表:[ag, bury, cry, dad]
数字ArrayList包含单词的每个字符,转换为其指定的int值。
每个数字代表一个字母; a = 1,b = 2等,等等 因此,“ag”将表示为“17”
如何将数字列表的元素添加到一个新的ArrayList中,该ArrayList包含与单词相同的数字:[17, 2211825, 31825, 414]
?有更简单的方法吗?到目前为止,我试过的每个循环组合都让我失望了。有帮助吗?
P.S。不,我不是要求你为我做整个项目。这只是项目的一小部分,涉及基于素数,复合,偶数和奇数的排序。这是我绊倒的唯一部分
答案 0 :(得分:1)
import java.util.*;
public class HelloWorld{
public static int getValue(char c) {
return c-'a'+ 1;
}
public static void main(String []args){
String data[] = {"ag", "bury", "cry", "dad"};
List<String> input = Arrays.asList(data);
List<String> result = new ArrayList<String>();
for(int i=0;i<input.size();i++) {
StringBuilder sb = new StringBuilder();
String item = input.get(i).toLowerCase();
for(int j=0;j<item.length();j++){
sb.append(getValue(item.charAt(j)));
}
result.add(sb.toString());
}
for(int i=0;i<result.size();i++)
System.out.println(result.get(i));
}
}
希望这会有所帮助。 这是假设映射&#34; a-> 1,b-> 2&#34;等等。 如果没有,则需要进行一些修改