0
private void convertToNumeric() {

    for (int i = 0; i < this.CONVERT_TO_NUMERIC.length; i++) {
        for (int j = 0; j < this.INPUT_FROM_USER.length(); j++) {



        }
    }



}



private String INPUT_FROM_USER = "";
private final String[][] CONVERT_VALUES = { {"1", "w"}, { "2", "e"}, {"3", "r"}, 
                                            {"4", "s"}, {"5", "d"}, {"6", "f"}, {"7", "z"},
                                            { "8", "x"}, {"9", "c"} };

private final String[][] CONVERT_TO_NUMERIC = { {"abc", "2"}, {"def", "3"}, {"ghi", "4"},
                                                {"jkl", "5"}, {"mno", "6"}, {"pqrs", "7"},
                                                {"tuv", "8"}, {"wxyz", "9"} };

入力を文字列配列で指定された文字に変換する方法について、誰かが私にガイダンスを教えてもらえますか?

これが例です。

  • ユーザー入力「Hello world」
  • 文字列配列を検索し、文字列内の各文字を指定された数値に変換します
  • 「43556 96753」を出力

配列の最初の値に文字が含まれている場合は、数値に置き換えられます。

私はスプーンで与えられるように求めているわけではありません。始める方法について少しガイダンスが必要なだけです. 前もって感謝します。

4

2 に答える 2

1

順番を変えて、表から始めます (= 何をすべきか):

String value = "Hello world";

for (String[] mapping : CONVERT_TO_NUMERIC) {
    value = value.replaceAll("(?i)[" + mapping[0] + "]", mapping[1]);
    // Case insensitive "[abc]" -> "2" etcera.
}

// value now is "43556 96753"

他のテーブルについても同じです。

于 2013-05-27T11:41:08.263 に答える