2

文字列を整数の配列に変換する必要があります。各配列スロットには、整数値の1文字が含まれます。たとえば、文字列omgは次のように返されます

array[0] = 13; array[1] = 44; array[3] = 26; 

編集これらの文字の値は考え抜かれています。文字を整数に変換する方法があるかどうか知りたいだけです。

このための組み込みの方法はありますか?

4

2 に答える 2

2

配列に変換するには、を試してくださいchar[] chars = str.toCharArray();。整数に変換するには、forループを使用して、varible.getNumericValue();を呼び出します。したがって、例は次のようになります。

String omg = "OMG";
char[] chars = omg.toCharArray();
int[] result;
for(char currentChar : chars){
    result[result.length] = currentChar.getNumericValue();//result.length starts at 1 more than the final index
}

編集:または、上記のようにString.getBytesを使用します。

編集2:実際、これは完全に間違っています。

于 2013-01-16T06:16:59.673 に答える
2

これを行うには、「文字を整数に変換する」という意味に応じて、さまざまな方法があります。

  • String.getBytes()文字列をシステムのデフォルトのエンコーディングにエンコードし、それをとして与えるために使用できますbyte[]。タイプはbyte整数型です。

  • String.toCharArray()文字列の文字を指定するために使用できます。タイプはchar整数型です。

  • 文字列に対して他のさまざまな「ミステリー」変換を行うことができます。たとえば、Caeserの暗号を各文字列文字に適用して、文字を与え、それを数字に変換します。

char[]次に、またはbyte[]をに変換するループを作成できますがint[]、変換のこのステップを実行するための組み込みのメソッドはありません...それが必要な場合。

最初の2つのアプローチでは、文字列値とシステムのデフォルトの文字エンコードに応じて、異なる整数が得られる場合があることに注意してください。この変換で何をしようとしているのかを理解することが重要です...


(質問の変換例は文字通りに解釈されるべきではないと思います...)

于 2013-01-16T06:30:21.017 に答える