PTA IP地址轉換 簡單方法Java

PTA IP地址轉換 簡單方法Java

題目介紹

一個IP地址是用四個字節(每個字節8個位)的二進制碼組成。
請將32位二進制碼錶示的IP地址轉換爲十進制格式表示的IP地址輸出。

輸入格式:
輸入在一行中給出32位二進制字符串。

輸出格式:
在一行中輸出十進制格式的IP地址,其由4個十進制數組成(分別對應4個8位的二進制數),中間用“.”分隔開。

輸入樣例:
11001100100101000001010101110010
輸出樣例:
204.148.21.114

利用Java中的Integer包裝類的valueOf()方法

代碼如下:

import java.util.Scanner;

public class Main{
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String s = sc.nextLine();
		String[] ss = new String[4];
		ss[0] = s.substring(0, 8);
		ss[1] = s.substring(8, 16);
		ss[2] = s.substring(16, 24);
		ss[3] = s.substring(24, 32);
		for (int i = 0; i < ss.length; i++) {
			System.out.print(Integer.valueOf(ss[i], 2));
			if(i < ss.length - 1) {
				System.out.print(".");
			}
		}
	}
}

同時,如果是其它進制轉十進制也可以使用該方法

摘自jdk api 1.8_google
public static Integer valueOf(String s, int radix)   throws NumberFormatException
返回一個Integer對象,保存從指定的String的值,並用第二個參數給出的基數進行解析。
第一個參數被解釋爲在第二個參數指定的基數中表示一個有符號整數,就好像參數被賦予了parseInt(java.lang.String, int)方法一樣。 結果是一個Integer對象,表示由字符串指定的整數值。
換句話說,該方法返回一個Integer對象的值等於:
new Integer(Integer.parseInt(s, radix)) 參數 s - 要解析的字符串。 radix -
用於解釋的基數 s 結果 一個保存由指定基數中的字符串參數表示的值的 Integer對象。

說白了,就是第一個參數爲所要轉換其它進制的數(必須是字符串形式),第二個是想要轉換的進制,使用該方法就可以一步將其他進制轉換爲十進制數。

小夥伴們還有其它更簡單的方法嗎?歡迎下方留言評論~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章