Java中利用陣列將輸入string型別的數值轉化為int型
阿新 • • 發佈:2019-01-13
本小白在程式設計中做過一道題:從控制檯獲取一行數字,將其中各個數字相乘。
首先本小白想到的是利用integer.parseInt(string s);將字串直接轉換為int型。但發現當輸入一個20位的數時,則會丟擲錯誤。
後來就像利用陣列來存取數字,以為陣列的長度可以根據字串的長度開闢空間。首先利用的是toCharArray()轉換為char型資料,再遍歷後利用Integer.parseInt()轉化為int[]。達到將不限長度將輸入的數字轉化為int型處理。
附例項程式碼
BufferedReader in=new BufferedReader(new InputStreamReader(System.in ));//將system.in包裝為inputstreamreader流,可達到讀取一行資料
String b = null;
try {
b = in.readLine();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
char[] c = b.toCharArray();//將輸入資料轉化為char型別的陣列
int [] d= new int[c.length];
for(int i=0;i<c.length;i++){
char m=c[i];
String g=m+"";//構造string型別資料
d[i]=Integer.parseInt(g);//利用integer。parseint將string型別轉化為int型別資料,存入int陣列中
}