1. 程式人生 > >當需要輸入較長的整數,int型別又不夠長時(如何將字元型別數字轉換為int型別)

當需要輸入較長的整數,int型別又不夠長時(如何將字元型別數字轉換為int型別)

1.將需要輸入的長整數以字串型別存入;

2.將整數放入陣列;

3.進行其他操作;

public static void main(String[] args)
	{
		Scanner a=new Scanner(System.in);
		String input= a.nextLine();//將整數以字串型別讀入
		int[] A=new int[input.length()];//定義並初始化以為陣列A,長度為字串長度
		for(int i=0;i<input.length();i++)
		{
			A[i]=input.charAt(i)-'0';
                //charAt(i)是將字串中的每個元素分開並存入內部陣列,i就是陣列中下標為i的元素
                //-'0'就是手動將該元素轉換為int型別的整數
                //+'0'則是將int型別轉換為char型別
		}
		for(int B:A)//利用foreach輸出陣列
		{
			System.out.print(" "+B);
		}
	}

----------------------------------------------------------------------------------------------------------分割線

經過進一步的學習,知道了Java中有個資料類---->Integer類

Integer類定義:

  • 不可變的任意精度整數。 所有操作的行為就好像BigIntegers以二進位制補碼錶示(如Java的原始整數型別)表示。 BigInteger提供了所有Java的原始整數運算子和java.lang.Math中所有相關方法的類比。 此外,BigInteger還提供了模數運算,GCD計算,原始測試,初級生成,位操作以及其他一些其他操作的操作。

其中含有一個構造方法:

    • 將BigInteger的十進位制字串表示形式轉換為BigInteger。

public class BigInterger {

	public static void main(String[] args) {
		Scanner input=new Scanner(System.in);
		BigInteger input1=new BigInteger(input.nextLine());
		System.out.println("這是整數:"+input1);
	}

}

 結果: