Java有八種基本資料型別:byte、short、int、long、char、float、double和boolean。 int是32位元有符號資料型,用來儲存整數。其範圍從-2,147,483,648到2,147,483,647。 char是16位元無符號Unicode字元。
在本文中,我們將討論一些將int轉換為char的方法−
透過加入‘0’
#透過使用forDigit()方法
透過使用型別轉換
下面的範例說明如何宣告和初始化int變數。
int num1 = 24;
int是用來宣告int變數的關鍵字,num1是保存值為24的變數的名稱。
下面的範例說明如何宣告和初始化字元變數。我們將字元變數儲存在單引號(‘ ’)中。
char ch1 = ‘S’;
char 是用來宣告字元變數的關鍵字,ch1 是儲存字元 'S' 的變數的名稱。
class ‘Character’的forDigit()方法根據給定的RADIX值傳回指定數字的字元。十進位的RADIX值為10,十六進位的RADIX值為16,二進位的RADIX值為2。
類別‘Character’在‘java.lang’套件中可用。
我們也會在程式中使用getClass().getSimpleName()方法來檢查將整數變數轉換為字元後的資料類型。
char char_variable = Character.forDigit(var_to_convert, radix);
char_variable − 儲存轉換後的值的字元變數的名稱。
Character是類別名,forDigit()是它的方法,與兩個參數一起使用。
var_to_convert是將要轉換的變量,radix作為轉換的基底數
import java.lang.*; public class Conversion { public static void main(String[] args) { int rad = 16; int n1 = 8; int n2 = 11; // Conversion of int to char char ch1 = Character.forDigit(n1, rad ); char ch2 = Character.forDigit(n2, rad ); System.out.println("ch1: " + ch1); System.out.println("ch2: " + ch2); // to check the datatype System.out.println("type of ch1: " + ((Object)ch1).getClass().getSimpleName()); System.out.println("type of ch2: " + ((Object)ch2).getClass().getSimpleName()); } }
ch1: 8 ch2: b type of ch1: Character type of ch2: Character
在上面的程式碼中,我們建立了三個整數變數。 'ch1'和'ch2'將儲存轉換後的變數。我們使用基數值16,因此指定的變數已經轉換為十六進制數位(0到9,之後是A到F)。十六進位系統中第11位的值是'b'。因此,我們得到了8和'b'作為輸出。最後,我們檢查了資料的類型。
當我們將一個資料型別轉換為另一個資料型別時,我們稱之為型別轉換。在Java中有兩種類型的類型轉換:明確和隱式。在隱式類型轉換中,較低的資料類型會被編譯器自動轉換為任何其他較高的資料類型,並且在轉換過程中沒有遺失資料的風險。
當我們將一個高資料類型強制轉換為較低的資料類型時,這稱為顯式類型轉換,需要手動完成。在這種情況下,存在資料遺失的風險,因為較低的資料類型的範圍小於較高的資料類型,這是手動完成的主要原因。
在我們的程式中,我們將使用明確類型轉換,因為整數範圍高於字元。
char_variable = (char) var_to_convert;
public class Conversion { public static void main(String[] args) { int n1 = 97; int n2 = 65; // Typecasting of int to char variable char ch1 = (char)n1; char ch2 = (char)n2; System.out.println("ch1: " + ch1); System.out.println("ch2: " + ch2); } }
ch1: a ch2: A
在上面的程式碼中,我們宣告並初始化了兩個整數變數'n1'和'n2'。 'ch1'和'ch2'將儲存轉換後的變數。我們在輸出中得到'a'和'A',因為它們是65和97的ASCII值。
當我們在整數變數中新增0並進行類型轉換時,實際上會傳回該數字的ASCII值。 0的ASCII值為48,所以如果我們將0加上65,它將變成113,而113的ASCII值為q。
public class Conversion { public static void main(String[] args) { int n1 = 65; int n2 = 66; // Conversion of int to char char ch1 = (char)(n1 + '0'); char ch2 = (char)(n2 + '0'); System.out.println("ch1: " + ch1); System.out.println("ch2: " + ch2); System.out.println("type of ch1: " + ((Object)ch1).getClass().getSimpleName()); System.out.println("type of ch2: " + ((Object)ch2).getClass().getSimpleName()); } }
ch1: q ch2: r type of ch1: Character type of ch2: Character
在本文中,我們討論了三種將int轉換為char的方法。大多數情況下,我們使用顯式類型轉換來進行這種類型的轉換,因為它易於使用和理解。
以上是Java程式實作將整數轉換為字元的功能的詳細內容。更多資訊請關注PHP中文網其他相關文章!