我需要將字符串轉換爲整數數組。每個陣列插槽將包含一個整數值的字母。例如,串omg
將返回,就像這樣在Java中是否有內置的方法將字符串轉換爲整數數組?
array[0] = 13; array[1] = 44; array[3] = 26;
編輯字母這些值沒想起來。我只想知道是否有方法將字母轉換爲整數。
有沒有內置的方法呢?
我需要將字符串轉換爲整數數組。每個陣列插槽將包含一個整數值的字母。例如,串omg
將返回,就像這樣在Java中是否有內置的方法將字符串轉換爲整數數組?
array[0] = 13; array[1] = 44; array[3] = 26;
編輯字母這些值沒想起來。我只想知道是否有方法將字母轉換爲整數。
有沒有內置的方法呢?
有多種方法可以做到這一點,具體取決於「轉向整數」的意思。
您可以使用String.getBytes()
編碼串入系統的默認編碼,並給你,作爲一個byte[]
。 byte
類型是一個整數類型。
您可以使用String.toCharArray()
爲您提供字符串的字符。 char
類型是整數類型。
您可以對字符串進行各種其他「神祕」轉換;例如將Caeser的密碼應用於每個字符串字符,以便給您一封信,然後您將其轉換爲數字。
你可以那麼寫一個循環來把一個char[]
或byte[]
到int[]
,但沒有內置的方法做改造這一步......如果這就是你所需要的。
請注意,前兩種方法可能會給你不同的整數,具體取決於字符串值和系統的默認字符編碼。你明白你正在嘗試用這種轉換做...
是很重要的(我假設的問題的例子轉型不應該按字面意思理解...)
好用於將其轉換成陣列,試着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:其實這是完全錯誤的。
我不認爲你想在向數組索引寫值時使用foreach循環。即使你是這樣,你也不想使用result.length作爲索引值。而字符串變量被稱爲omg,而不是str ... – sage88
我知道,我意識到有多少東西是錯的,並且完全放棄了。 –
' String.getBytes()' –
o - > 13,m - > 44和g - > 26如何? – Bohemian