常用类03/String的转换⭐

川长思鸟来 2023-10-04 16:43 110阅读 0赞

String的转换


1. String与基本数据类型包装类的转换

  1. String–>基本数据类型、包装类:调用包装类的静态方法: parseXxx ( str)
  2. 基本数据类型、包装类–> String:调用string重载的value0f(xxx)

    package com.cyl;

    import org.junit.Test;

    public class StringMethodTest {

  1. @Test
  2. public void test(){
  3. String str1 = "123";
  4. //int num = (int)str1; 错误!
  5. int num = Integer.parseInt(str1);//123
  6. String str2 = String.valueOf(num); //"123"
  7. String str3 = num+"45";
  8. System.out.println(str1);
  9. System.out.println(str2);
  10. System.out.println(str3);
  11. System.out.println(str1 == str2);
  12. }
  13. }

结果

在这里插入图片描述


string 与char[]之间的转换

string–>char[ ]:调用string的tocharArray()

  1. package com.cyl;
  2. import org.junit.Test;
  3. public class StringMethodTest {
  4. @Test
  5. public void test(){
  6. String str1 = "abc123";
  7. char[] charArray = str1.toCharArray();
  8. for(int i = 0;i < charArray.length;i++){
  9. System.out.println(charArray[i]);
  10. }
  11. }
  12. }

结果
在这里插入图片描述

char[] —> string:调用string的构造器

  1. package com.cyl;
  2. import org.junit.Test;
  3. public class StringMethodTest {
  4. @Test
  5. public void test(){
  6. char[] arr = new char[]{
  7. 'h','e','l','l','o'};
  8. String str2 = new String(arr);
  9. System.out.println(str2);
  10. }
  11. }

结果

在这里插入图片描述


2. String与byte[]之间的转换

编码:字符串–>字节(看得懂—>看不懂的二进制数据)
解码:编码的逆过程,字节–〉字符串―(看不懂的二进制数据—>看得懂>)

注:UnsupportedEncodingException ————>转码异常!!

编码:String —> byte[]:调用string 的getBytes()

  1. package com.cyl;
  2. import org.junit.Test;
  3. import java.io.UnsupportedEncodingException;
  4. import java.util.Arrays;
  5. public class StringMethodTest {
  6. @Test
  7. public void test() throws UnsupportedEncodingException {
  8. String str1 = "abc123";
  9. byte[] bytes = str1.getBytes();//使用默认的字符集,进行转换
  10. System.out.println(Arrays.toString(bytes));
  11. String str2 = "中国";
  12. byte[] bytes1 = str2.getBytes();//使用默认的字符集,进行转换
  13. byte[] gbks = str2.getBytes("gbk");//使用gbk字符集进行编码
  14. System.out.println(Arrays.toString(bytes1));
  15. System.out.println(Arrays.toString(gbks));
  16. }
  17. }

结果

在这里插入图片描述

解码: byte[] —> string:调用string的构造器

  1. package com.cyl;
  2. import org.junit.Test;
  3. import java.io.UnsupportedEncodingException;
  4. import java.util.Arrays;
  5. public class StringMethodTest {
  6. @Test
  7. public void test() throws UnsupportedEncodingException {
  8. String str1 = "中国";
  9. //编码1
  10. byte[] bytes = str1.getBytes();//使用默认的字符集,进行转换
  11. //编码2
  12. byte[] gbks = str1.getBytes("gbk");//使用gbk字符集进行编码
  13. System.out.println(Arrays.toString(bytes));
  14. //解码
  15. String str2 = new String(bytes);//使用默认的字符串,进行解码。
  16. System.out.println(str2);
  17. String str3 = new String(gbks);
  18. System.out.println(str3);//出现乱码,因为编码集和解码集不一致
  19. String str4 = new String(gbks,"gbk");
  20. System.out.println(str4);
  21. }
  22. }

结果

在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,110人围观)

还没有评论,来说两句吧...

相关阅读

    相关 String

    一、String类 String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象。java把String类声明的final类,不