Java中数组和String相互转换的几种常见方法

 更新时间:2025年04月22日 11:09:32   作者:ashane1314  
这篇文章主要介绍了Java中数组和String相互转换的几种常见方法,每种类型都有相应的转换方法,如使用String类的构造函数、toCharArray()、String.join()、Arrays.toString()、StringBuilder等,这些方法能帮助开发者高效地进行数据类型之间的转换,需要的朋友可以参考下

在 Java 中,数组和 String 之间的相互转换是常见的需求。下面是几种常见的数组和 String 之间转换的方法:

1. 字符数组 (char[]) 与字符串 (String) 相互转换

字符数组转字符串

要将字符数组转换为字符串,可以使用 String 类的构造函数:

public class CharArrayToString {
    public static void main(String[] args) {
        char[] charArray = {'J', 'a', 'v', 'a'};
        
        // 将字符数组转换为字符串
        String str = new String(charArray);
        
        System.out.println(str);  // 输出: "Java"
    }
}

字符串转字符数组

要将字符串转换为字符数组,可以使用 String 类的 toCharArray() 方法:

public class StringToCharArray {
    public static void main(String[] args) {
        String str = "Java";
        
        // 将字符串转换为字符数组
        char[] charArray = str.toCharArray();
        
        // 输出字符数组
        for (char c : charArray) {
            System.out.print(c + " ");  // 输出: J a v a
        }
    }
}

2. 字符串数组 (String[]) 与字符串 (String) 相互转换

字符串数组转字符串

可以使用 String.join() 方法,或者使用 Arrays.toString() 方法将字符串数组转换为一个字符串。String.join() 允许指定连接符,而 Arrays.toString() 只是将数组转换为一个逗号分隔的字符串。

import java.util.Arrays;

public class StringArrayToString {
    public static void main(String[] args) {
        String[] strArray = {"Java", "Python", "C++"};
        
        // 使用 String.join() 将数组转换为字符串,指定分隔符
        String joinedString = String.join(", ", strArray);
        System.out.println(joinedString);  // 输出: "Java, Python, C++"
        
        // 使用 Arrays.toString() 转换为字符串(包含括号和逗号)
        String arrayString = Arrays.toString(strArray);
        System.out.println(arrayString);  // 输出: "[Java, Python, C++]"
    }
}

字符串转字符串数组

要将一个字符串转换为字符串数组,可以使用 String.split() 方法,通常根据某个分隔符进行拆分。

public class StringToStringArray {
    public static void main(String[] args) {
        String str = "Java,Python,C++";
        
        // 使用 split() 方法根据逗号拆分字符串
        String[] strArray = str.split(",");
        
        // 输出字符串数组
        for (String s : strArray) {
            System.out.println(s);  // 输出: Java, Python, C++
        }
    }
}

3. 整数数组 (int[]) 与字符串 (String) 相互转换

整数数组转字符串

可以使用 Arrays.toString() 方法将整数数组转换为字符串,或者使用 StringBuilder 手动构造字符串:

import java.util.Arrays;

public class IntArrayToString {
    public static void main(String[] args) {
        int[] intArray = {1, 2, 3, 4, 5};
        
        // 使用 Arrays.toString() 将整数数组转换为字符串
        String str = Arrays.toString(intArray);
        System.out.println(str);  // 输出: "[1, 2, 3, 4, 5]"
    }
}

字符串转整数数组

可以使用 String.split() 方法将字符串按分隔符拆分,再将每个部分转换为整数:

public class StringToIntArray {
    public static void main(String[] args) {
        String str = "1,2,3,4,5";
        
        // 使用 split() 方法拆分字符串
        String[] strArray = str.split(",");
        
        // 将每个字符串转换为整数并存入整数数组
        int[] intArray = new int[strArray.length];
        for (int i = 0; i < strArray.length; i++) {
            intArray[i] = Integer.parseInt(strArray[i]);
        }
        
        // 输出整数数组
        for (int num : intArray) {
            System.out.print(num + " ");  // 输出: 1 2 3 4 5
        }
    }
}

4. 字节数组 (byte[]) 与字符串 (String) 相互转换

字节数组转字符串

可以使用 String 类的构造函数,将字节数组转换为字符串:

public class ByteArrayToString {
    public static void main(String[] args) throws Exception {
        byte[] byteArray = {74, 97, 118, 97};  // 对应 "Java" 的 ASCII 值
        
        // 将字节数组转换为字符串
        String str = new String(byteArray, "UTF-8");
        
        System.out.println(str);  // 输出: "Java"
    }
}

字符串转字节数组

可以使用 String 类的 getBytes() 方法将字符串转换为字节数组:

public class StringToByteArray {
    public static void main(String[] args) throws Exception {
        String str = "Java";
        
        // 将字符串转换为字节数组
        byte[] byteArray = str.getBytes("UTF-8");
        
        // 输出字节数组
        for (byte b : byteArray) {
            System.out.print(b + " ");  // 输出字节值
        }
    }
}

5. 整数 (int) 与字符串 (String) 相互转换

整数转字符串

可以使用 String.valueOf() 或 Integer.toString() 方法:

public class IntToString {
    public static void main(String[] args) {
        int num = 123;
        
        // 使用 String.valueOf() 将整数转换为字符串
        String str1 = String.valueOf(num);
        
        // 使用 Integer.toString() 将整数转换为字符串
        String str2 = Integer.toString(num);
        
        System.out.println(str1);  // 输出: "123"
        System.out.println(str2);  // 输出: "123"
    }
}

字符串转整数

可以使用 Integer.parseInt() 或 Integer.valueOf() 方法:

public class StringToInt {
    public static void main(String[] args) {
        String str = "123";
        
        // 使用 Integer.parseInt() 将字符串转换为整数
        int num = Integer.parseInt(str);
        
        System.out.println(num);  // 输出: 123
    }
}

总结

  • 字符数组与字符串互转:使用 new String(char[]) 或 toCharArray()
  • 字符串数组与字符串互转:使用 String.join() 或 Arrays.toString()
  • 整数数组与字符串互转:使用 Arrays.toString() 或手动转换。
  • 字节数组与字符串互转:使用 new String(byte[]) 或 getBytes()
  • 整数与字符串互转:使用 String.valueOf() 或 Integer.parseInt()

这些方法能帮助你在 Java 中高效地进行数组和字符串之间的相互转换。

到此这篇关于Java中数组和String相互转换的几种常见方法的文章就介绍到这了,更多相关Java数组和String相互转换内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java 直接调用python脚本,并传递参数代码实例

    java 直接调用python脚本,并传递参数代码实例

    这篇文章主要介绍了java调用python脚本传递参数的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • SpringBoot整合Spring Data JPA的详细方法

    SpringBoot整合Spring Data JPA的详细方法

    JPA全称为Java Persistence API(Java持久层API),是一个基于ORM的标准规范,在这个规范中,JPA只定义标准规则,不提供实现,本文重点给大家介绍SpringBoot整合Spring Data JPA的相关知识,感兴趣的朋友一起看看吧
    2022-02-02
  • Java虚拟机JVM栈溢出的问题解决

    Java虚拟机JVM栈溢出的问题解决

    Java虚拟机栈溢出是指在Java程序中,当线程调用的方法层级过深,导致栈空间溢出的情况,本文就详细的介绍了下产生的原因以及优化,具有一定的参考价值,感兴趣的可以了解一下
    2023-08-08
  • Java基于HttpClient实现RPC的示例

    Java基于HttpClient实现RPC的示例

    HttpClient可以实现使用Java代码完成标准HTTP请求及响应。本文主要介绍了Java基于HttpClient实现RPC,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • 浅谈java里的EL表达式在JSP中不能解析的问题

    浅谈java里的EL表达式在JSP中不能解析的问题

    下面小编就为大家带来一篇浅谈java里的EL表达式在JSP中不能解析的问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • Java方法重写的超详细讲解

    Java方法重写的超详细讲解

    在 Java 编程的精彩世界里,方法重写是一项极为重要且实用的特性,它犹如一把神奇的钥匙,为我们开启了面向对象编程中多态性的大门,今天,就让我们一同深入探索 Java 方法重写的奥秘,感兴趣的小伙伴跟着小编一起来看看吧
    2025-03-03
  • 使用Java注解和反射实现JSON字段自动重命名

    使用Java注解和反射实现JSON字段自动重命名

    这篇文章主要介绍了如何使用Java注解和反射实现JSON字段自动重命名,文中通过代码示例和图文介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-08-08
  • SpringBoot集成Nacos实现注册中心与配置中心流程详解

    SpringBoot集成Nacos实现注册中心与配置中心流程详解

    这篇文章主要介绍了SpringBoot集成Nacos实现注册中心与配置中心流程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2023-02-02
  • java thread start()和run()方法简析

    java thread start()和run()方法简析

    本文以java中thread的start()和run()的区别做详细介绍, 需要了解跟多的朋友可以参考下
    2012-11-11
  • SpringBoot集成Easy-Es的实战操作指南

    SpringBoot集成Easy-Es的实战操作指南

    Easy-ES(简称EE)是一款基于 Elasticsearch 官方 RestHighLevelClient 封装的 ORM 框架,本文将简单介绍一下Easy-ES的具体使用,需要的可以了解下
    2025-08-08

最新评论