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()方法
-
通过使用类型转换
Example 1
的中文翻译为:
示例 1
下面的示例说明了如何声明和初始化int变量。
int num1 = 24;
登录后复制
int是用于声明int变量的关键字,num1是保存值为24的变量的名称。
Example 2
的翻译为:
示例2
下面的示例说明了如何声明和初始化字符变量。我们将字符变量存储在单引号(‘ ’)中。
char ch1 = ‘S’;
登录后复制
char 是用来声明字符变量的关键字,ch1 是保存字符 'S' 的变量的名称。
方法1:使用forDigit()方法
class ‘Character’的forDigit()方法根据给定的RADIX值返回指定数字的字符。十进制的RADIX值为10,十六进制的RADIX值为16,二进制的RADIX值为2。
类‘Character’在‘java.lang’包中可用。
我们还将在程序中使用getClass().getSimpleName()方法来检查将整数变量转换为字符后的数据类型。
forDigit()的语法
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中有两种类型的类型转换:显式和隐式。在隐式类型转换中,较低的数据类型会被编译器自动转换为任何其他较高的数据类型,并且在转换过程中没有丢失数据的风险。
当我们将一个高数据类型强制转换为较低的数据类型时,这被称为显式类型转换,需要手动完成。在这种情况下,存在数据丢失的风险,因为较低的数据类型的范围小于较高的数据类型,这是手动完成的主要原因。
在我们的程序中,我们将使用显式类型转换,因为整数范围高于字符。
forDigit()的语法
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’
当我们在整数变量中添加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程序实现将整数转换为字符的功能的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!