① 用java把二進制數轉換成十進制數。
一樓回答的非常詳盡了哈,
就是感覺太多了,
個人覺得,比較常用的就是Integer的parseInt()方法,
使用起來也非常方便:
int a = Integer.parInt("你的二進制數", 2);
② Java二進制、八進制、十進制、十六進制轉換
在編程中,數字轉換是常見的操作。本文將介紹如何在Java中實現不同進制之間的轉換,包括二進制、八進制、十進制和十六進制。轉換的基本原理是將一個數從一種進製表示轉換為另一種進製表示。在Java中,可以使用`Integer.valueOf()`或`Integer.parseInt()`方法實現這一過程。
`Integer.valueOf()`方法接收兩個參數:第一個是需要轉換的字元串表示,第二個是目標進制的整數值(如2、8、10、16)。此方法將字元串表示的數字轉換為指定進制的整數值。`Integer.parseInt()`方法的工作原理相似,用於解析字元串並將其轉換為指定進制的整數。
下面是一些示例,展示如何在Java中實現不同進制之間的轉換:
**十進制轉N進制**:將十進制整數轉換為其他進製表示。
**十進制轉二進制**:
java
int decimalNumber = 10;
String binary = Integer.toBinaryString(decimalNumber);
System.out.println(binary);
**十進制轉十六進制**:
java
int decimalNumber = 10;
String hexadecimal = Integer.toHexString(decimalNumber);
System.out.println(hexadecimal);
**二進制轉換為八進制**:首先將二進制轉換為十進制,然後將十進制轉換為八進制。
java
String binary = "101010";
int decimal = Integer.parseInt(binary, 2);
String octal = Integer.toOctalString(decimal);
System.out.println(octal);
**十六進制轉換為八進制**:同樣,將十六進制轉換為十進制,再將十進制轉換為八進制。
java
String hex = "2A";
int decimal = Integer.parseInt(hex, 16);
String octal = Integer.toOctalString(decimal);
System.out.println(octal);
**八進制轉換為十六進制**:先將八進制轉換為十進制,再將十進制轉換為十六進制。
java
String octal = "22";
int decimal = Integer.parseInt(octal, 8);
String hexadecimal = Integer.toHexString(decimal);
System.out.println(hexadecimal);
通過這些示例,我們可以看到不同進制轉換在Java中的實現方法。在實際應用中,選擇適當的方法和轉換路徑取決於特定的場景和需求。
③ java中的進制如何轉化
在Java中,進制轉換主要涉及二進制、八進制、十進制和十六進制四種,轉換方法如下:
1. 十進制轉其他進制: 轉十六進制:使用Integer.toHexString,例如Integer.toHexString將十進制10轉換為十六進制字元串。 轉八進制:使用Integer.toOctalString,例如Integer.toOctalString將十進制10轉換為八進制字元串。 轉二進制:使用Integer.toBinaryString,例如Integer.toBinaryString將十進制10轉換為二進制字元串。
2. 其他進制轉十進制: 十六進制轉十進制:使用Integer.valueOf或Integer.parseInt,其中radix為16,例如Integer.valueOf或Integer.parseInt將十六進制字元串”FFFF”轉換為十進制。 八進制轉十進制:同樣使用Integer.valueOf或Integer.parseInt,其中radix為8,例如Integer.valueOf或Integer.parseInt將八進制字元串”17”轉換為十進制。 二進制轉十進制:同樣使用Integer.valueOf或Integer.parseInt,其中radix為2,例如Integer.valueOf或Integer.parseInt將二進制字元串”0101”轉換為十進制。
3. 二進制、八進制和十六進制之間的轉換: 通常先將目標進制轉換為十進制,然後再將十進制轉換為所需進制。例如,將十六進制”FF”轉為二進制,可以先用Integer.valueOf或Integer.parseInt將其轉為十進制,然後再用Integer.toBinaryString將其轉為二進制字元串。
注意事項: 在Java中,整數字面量前加0表示八進制,加0x或0X表示十六進制,二進制則沒有類似的字面量表示法,需要通過轉換方法得到。 轉換結果通常為字元串形式,如果需要整數形式,可以根據需要進行類型轉換。
④ java實現:整數進制相互轉換
java實現:整數進制相互轉換的方法:
十進制轉為二進制、八進制、十六進制, 用 Integer.toXXXString()方法
(1)十進制轉為二進制: Integer.toBinaryString(int i);
public static String toBinaryString(inti):以二進制(基數 2)無符號整數形式返回一個整數參數的字元串表示形式。
(2)十進制轉為8進制 :Integer.toOctalString(int i);
public static String toOctalString(inti):以八進制(基數 8)無符號整數形式返回一個整數參數的字元串表示形式。
(3)十進制轉為16進制: Integer.toHexString(int i);
public static String toHexString(inti):以十六進制(基數 16)無符號整數形式返回一個整數參數的字元串表示形式。
舉例:
Stringbin=Integer.toBinaryString(10);
Stringoct=Integer.toOctalString(10);
Stringhex=Integer.toHexString(10);
2.十六進制、八進制、二進制轉為十進制(有兩種方法):parseInt() 和valueOf()。
Integer.parseInt(String s,int radix);
public static int parseInt(String s,int radix) throws NumberFormatException{}使用第二個參數作為指定的基數,將字元串參數解析為有符號的整數;
Integer.valueOf(String s,int radix);
public static Integer valueOf(Strings, intradix) throws NumberFormatException{}返回一個 Integer 對象,該對象中保存了用第二個參數提供的基數進行解析時從指定的 String 中提取的值。
舉例:
try{
inti=Integer.parseInt("a",16);
//輸出為10進制數10
System.out.println(i);
}catch(Exceptione){
e.printStackTrace();
}
try{
//十六進制轉成十進制
Stringhex=Integer.valueOf("FFFF",16).toString();
System.out.println(hex);
//八進制轉成十進制
Stringoct=Integer.valueOf("12",8).toString();
System.out.println(oct);
//二進制轉十進制
Stringbin=Integer.valueOf("0101",2).toString();
System.out.println(bin);
}catch(Exceptione){
e.printStackTrace();
}
⑤ java中怎麼把字元串解析成10進制數
java.lang.Integer中有一個方法:valueOf(String s,int radix),其中s為傳入的參數,radix為要將這個字元串中每一個數將被識別成什麼進制的數,不過無論字元串中的每一位被是識別成什麼都不重要,結果是它都轉換成了10進制數。比如:
定義一個字元串val s:String = "924"
再定義一個變數val z = Integer.valueOf(s,10),即可把字元串s中每一位數識別為10進制數,即『9』就是十進制中的9,『2』就是十進制中的2,『4』就是10進制中的4,所以最後轉換成10進制數依舊為924
但是如果將變數z定義成val z = Integer.valueOf(s,16),即可把字元串s中每一位數識別為16進制數,即『9』就是16進制中的9,『2』就是16進制中的2,『4』就是16進制中的4,所以轉換成10進制數為2340