Java中 String与基本数据类型,包装类,char[],byte[]之间的转换

简介: Java中 String与基本数据类型,包装类,char[],byte[]之间的转换

String与基本数据类型,包装类之间的转换。
String转换为基本数据类型,包装类:调用包装类的parseXxx(str)方法

String str1="456";
        //string转换为int类型
        int str2 = Integer.parseInt(str1);
        System.out.println(str2);

2.基本数据类型,包装类转换为String:调用String重载的valueOf(xxx)方法。

int str3=123;
        String str4 = String.valueOf(str3);
        System.out.println(str4);

3.String与char[]数组之间的转换

3.1.String转换为char[] 调用toCharArray()

String s1="helloworld";
        char[] chars = s1.toCharArray();
        for (int i = 0; i < chars.length; i++) {
            System.out.println(chars[i]);
        }

3.2.char[]数组转换为String 调用:String的构造器

char[] chars1 = {'h', 'e', 'l', 'l', 'o'};
        String s2=new String(chars1);
        System.out.println(s2);

4.String与byte[] (字节数组)之间的相互转换

4.1.编码:

String 转换为 byte[] :调用String的getBytes()

String s1="ab1024程序员";
        byte[] bytes = s1.getBytes();//使用默认的字符集进行转换,我的是UTF-8
        System.out.println(Arrays.toString(bytes));
        输出结果:[97, 98, 49, 48, 50, 52, -25, -88, -117, -27, -70, -113, -27, -111, -104]
    try {
            byte[] gbks = s1.getBytes("gbk");//使用gbk字符集进行编码
            System.out.println(Arrays.toString(gbks));
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        输出结果:[97, 98, 49, 48, 50, 52, -77, -52, -48, -14, -44, -79]
        UTF-8 一个汉字代表三个字节 GBK中代表两个字节

4.2.解码:

byte[] 转换为 String :调用String的构造器

try {
            byte[] gbks = s1.getBytes("gbk");//使用gbk字符集进行编码
            System.out.println(Arrays.toString(gbks));
            String s2 = new String(bytes);
            System.out.println(s2); 
            String s3 = new String(gbks);//因为这个没有使用默认的字符集,进行解码,所以导致乱码
            System.out.println(s3);
      String gbk = new String(gbks, "gbk");//没有出现乱码,因为编码集和解码集一致!
            System.out.println(gbk);
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
       输出结果:ab1024����Ա  
         ab1024程序员
         ab1024程序员 


目录
相关文章
课时14:Java数据类型划分(初见String类)
课时14介绍Java数据类型,重点初见String类。通过三个范例讲解:观察String型变量、&quot;+&quot;操作符的使用问题及转义字符的应用。String不是基本数据类型而是引用类型,但使用方式类似基本类型。课程涵盖字符串连接、数学运算与字符串混合使用时的注意事项以及常用转义字符的用法。
443 9
|
Java
在Java中如何将基本数据类型转换为String
在Java中,可使用多种方法将基本数据类型(如int、char等)转换为String:1. 使用String.valueOf()方法;2. 利用+运算符与空字符串连接;3. 对于数字类型,也可使用Integer.toString()等特定类型的方法。这些方法简单高效,适用于不同场景。
1084 7
|
存储 Java 对象存储
String 属于基础的数据类型吗
String 在多数编程语言中被视为一种基础数据类型,但实际上它是由字符组成的序列。在一些语言中,如 Java 和 Python,String 被设计为不可变的对象,以简化编程和提高安全性。
592 6
|
存储 Java Windows
java基础(9)数据类型中的char类型以及涉及到的转义字符
Java中的char类型可以存储一个中文字符,因为它占用两个字节。转义字符允许在代码中使用特殊字符,例如`\n`表示换行,`\t`表示制表符,`\\`表示反斜杠,`\'`表示单引号,`\"`表示双引号。可以使用`\u`后跟Unicode编码来表示特定的字符。
755 3
java基础(9)数据类型中的char类型以及涉及到的转义字符
【Java基础面试二十六】、说一说String和StringBuffer有什么区别
这篇文章区分了Java中的String和StringBuffer类:String是不可变类,一旦创建字符序列就不能改变;而StringBuffer代表可变的字符串,可以通过其方法修改字符序列,最终可以通过`toString()`方法转换为String对象。
【Java基础面试二十六】、说一说String和StringBuffer有什么区别
|
NoSQL 安全 Java
Redis6入门到实战------ 三、常用五大数据类型(字符串 String)
这篇文章深入探讨了Redis中的String数据类型,包括键操作的命令、String类型的命令使用,以及String在Redis中的内部数据结构实现。
Redis6入门到实战------ 三、常用五大数据类型(字符串 String)
|
前端开发 Java
成功解决:java.lang.String cannot be cast to java.lang.Integer
这篇文章记录了作者在使用Axios二次封装时遇到的一个Java类型转换问题,即前端传递的字符串参数不能直接转换为Integer类型,文章提供了正确的转换方法来解决这个问题。
成功解决:java.lang.String cannot be cast to java.lang.Integer
|
安全 Java API
Java系类 之 String、StringBuffer和StringBuilder类的区别
这篇文章讨论了Java中`String`、`StringBuffer`和`StringBuilder`三个类的区别,其中`String`是不可变的,而`StringBuffer`是线程安全的可变字符串类,`StringBuilder`是非线程安全的可变字符串类,通常在单线程环境下性能更优。
Java系类 之 String、StringBuffer和StringBuilder类的区别
|
Java Android开发
解决Android编译报错:Unable to make field private final java.lang.String java.io.File.path accessible
解决Android编译报错:Unable to make field private final java.lang.String java.io.File.path accessible
3987 1

热门文章

最新文章