Java中String、char、int相互转换

一、String与char
string 转换为 char[]: toCharArray()

String test = "123";
char[] ch1 = test.toCharArray();

string 转换为单个char字符:charAt

char ch = "s".charAt(0);

char 转换为 string: valueOf

char[] ch1 = {'a','b','c'};
String s = String.valueOf(ch1);//转换字符串数组
String s1 = String.valueOf(ch1[0]);//转换单个字符

用for循环:

String res = "";
for(char ch : ch2) {//ch2为一字符串数组
    res+=ch;
}

二、String和int

int -> String:
三种方法:

int a = 899;
String s = String.valueOf(a);
String s = Integer.toString(a);
String s = "" + a;

String -> int:
两种方法:

String s = "899";
int a = Integer.parseInt(s);
int a = Integer.valueOf(s).intValue();//注意不用intvalue()方法也可以自动拆箱了。

三、Char和int

char -> int

char ch = '8';
int a = ch - 48;//利用Ascii码的性质
int a = (char)ch;//一般情况下,如果是字母的话直接转换为对呀的Ascii码
//第二种用包装类,略麻烦:
Character ch1 = new Character(ch);
int a = Integer.parseInt(ch1.toString());

int -> char

int a = 8;
char ch = (char)(a+48);

tips:char转int不一定要强制转换,但是int转char要强制转换。

1. Stringint: - 使用Integer.parseInt方法 ```java String str = "123"; int num = Integer.parseInt(str); ``` - 使用Integer.valueOf方法 ```java String str = "123"; Integer num = Integer.valueOf(str); int n = num.intValue(); ``` 2. intString: - 使用String.valueOf方法 ```java int num = 123; String str = String.valueOf(num); ``` - 使用Integer.toString方法 ```java int num = 123; String str = Integer.toString(num); ``` 3. charString: - 使用String.valueOf方法 ```java char c = 'a'; String str = String.valueOf(c); ``` - 将char转成char数组,再使用String构造方法 ```java char c = 'a'; char[] arr = {c}; String str = new String(arr); ``` 4. Stringchar: - 使用StringcharAt方法 ```java String str = "abc"; char c = str.charAt(0); ``` - 将String转成char数组,再取第一个字符 ```java String str = "abc"; char[] arr = str.toCharArray(); char c = arr[0]; ``` 5. int数组转List: - 使用Arrays.asList方法 ```java int[] nums = {1, 2, 3}; List<Integer> list = Arrays.asList(nums); ``` - 使用IntStream.of方法,再转成List ```java int[] nums = {1, 2, 3}; List<Integer> list = IntStream.of(nums).boxed().collect(Collectors.toList()); ``` 6. List转int数组: - 使用Java 8的stream,再转成int数组 ```java List<Integer> list = Arrays.asList(1, 2, 3); int[] nums = list.stream().mapToInt(Integer::intValue).toArray(); ``` - 使用循环,逐个取出List的元素,再添加到int数组 ```java List<Integer> list = Arrays.asList(1, 2, 3); int[] nums = new int[list.size()]; for (int i = 0; i < list.size(); i++) { nums[i] = list.get(i); } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值