java字符串转字符串数组

Today we will look into how to convert Java String array to String. Sometimes we have to convert String array to String for specific requirements. For example; we want to log the array contents or we need to convert values of the String array to String and invoke other methods.

今天,我们将研究如何将Java String数组转换为String。 有时,为了满足特定要求,我们必须将String数组转换为String。 例如; 我们要记录数组内容,或者需要将String数组的值转换为String并调用其他方法。

Java字符串数组到字符串 (Java String Array to String)

Most of the time we invoke toString() method of an Object to get the String representation. Let’s see what happens when we invoke toString() method on String array in java.

大多数时候,我们调用Object的toString()方法来获取String表示形式。 让我们看看在Java中对String数组调用toString()方法时会发生什么。

package com.journaldev.util;public class JavaStringArrayToString {public static void main(String[] args) {String[] strArr = new String[] {"1","2","3"};String str = strArr.toString();System.out.println("Java String array to String = "+str);}}

Below image shows the output produced by the above program.

下图显示了以上程序产生的输出。

The reason for the above output is because toString() call on the array is going to Object superclass where it’s implemented as below.

上面输出的原因是因为对数组的toString()调用将转到Object超类,该超类的实现如下。

public String toString() {return getClass().getName() + "@" + Integer.toHexString(hashCode());}

Java字符串数组到字符串示例 (Java String Array to String Example)

So how to convert String array to String in java. We can use Arrays.toString method that invoke the toString() method on individual elements and use StringBuilder to create String.

那么如何在Java中将String数组转换为String。 我们可以使用Arrays.toString方法在单个元素上调用toString()方法,并使用StringBuilder创建String。

public static String toString(Object[] a) {if (a == null)return "null";int iMax = a.length - 1;if (iMax == -1)return "[]";StringBuilder b = new StringBuilder();b.append('[');for (int i = 0; ; i++) {b.append(String.valueOf(a[i]));if (i == iMax)return b.append(']').toString();b.append(", ");}
}

We can also create our own method to convert String array to String if we have some specific format requirements.

如果我们有一些特定的格式要求,我们还可以创建自己的方法将String数组转换为String。

Below is a simple program showing these methods in action and output produced.

下面是一个简单的程序,显示了这些方法的作用和所产生的输出。

package com.journaldev.util;import java.util.Arrays;public class JavaStringArrayToString {public static void main(String[] args) {String[] strArr = new String[] { "1", "2", "3" };String str = Arrays.toString(strArr);System.out.println("Java String array to String = " + str);str = convertStringArrayToString(strArr, ",");System.out.println("Convert Java String array to String = " + str);}private static String convertStringArrayToString(String[] strArr, String delimiter) {StringBuilder sb = new StringBuilder();for (String str : strArr)sb.append(str).append(delimiter);return sb.substring(0, sb.length() - 1);}
}

So if we use array toString() method, it returns useless data.

因此,如果我们使用数组toString()方法,它将返回无用的数据。

Java Arrays class provide toString(Object[] objArr) that iterates over the elements of the array and use their toString() implementation to return the String representation of the array. That’s why when we use this function, we can see that it’s printing the array contents and it can be used for logging purposes.

Java Arrays类提供了toString(Object[] objArr) ,该方法可以迭代数组的元素,并使用其toString()实现返回数组的String表示形式。 这就是为什么当我们使用此函数时,我们可以看到它正在打印数组内容,并且可以用于记录目的。

If you want to combine all the String elements in the String array with some specific delimiter, then you can use convertStringArrayToString(String[] strArr, String delimiter) method that returns the String after combining them.

如果要将String数组中的所有String元素与某些特定的定界符组合在一起,则可以使用convertStringArrayToString(String[] strArr, String delimiter)方法,该方法在组合它们后返回String。

Java数组到字符串的示例 (Java Array to String Example)

Now let’s extend our String array to String example to use with any other custom classes, here is the implementation.

现在让我们将String数组扩展为String示例,以与任何其他自定义类一起使用,这是实现。

package com.journaldev.util;import java.util.Arrays;public class JavaArrayToString {public static void main(String[] args) {A[] arr = { new A("1"), new A("2"), new A("3") };// default toString() methodSystem.out.println(arr.toString());// using Arrays.toString() for printing object array contentsSystem.out.println(Arrays.toString(arr));// converting Object Array to StringSystem.out.println(convertObjectArrayToString(arr, ","));}private static String convertObjectArrayToString(Object[] arr, String delimiter) {StringBuilder sb = new StringBuilder();for (Object obj : arr)sb.append(obj.toString()).append(delimiter);return sb.substring(0, sb.length() - 1);}}class A {private String name;public A(String name) {this.name = name;}@Overridepublic String toString() {System.out.println("A toString() method called!!");return this.name;}
}

Output produced by the above java array to String example program is;

上面的java数组产生的输出到String示例程序是:

[Lcom.journaldev.util.A;@7852e922
A toString() method called!!
A toString() method called!!
A toString() method called!!
[1, 2, 3]
A toString() method called!!
A toString() method called!!
A toString() method called!!
1,2,3

So we looked at how to convert Java String array to String and then extended it to use with custom objects. That’s all for converting java array to String.

因此,我们研究了如何将Java String数组转换为String,然后将其扩展为与自定义对象一起使用。 这就是将java数组转换为String的全部。

GitHub Repository.GitHub Repository中检出更多核心Java示例。

Reference: Java Arrays toString API Doc

参考: Java Arrays toString API文档

翻译自: https://www.journaldev.com/773/java-string-array-to-string

java字符串转字符串数组

java字符串转字符串数组_Java字符串数组到字符串相关推荐

  1. java字符串的字节数组_Java字节数组到字符串到字节数组

    我正在尝试将byte []转换为字符串,将byte []的字符串表示形式转换为byte []的转换...我将byte []转换为要发送的字符串,然后我期望我的Web服务(用python编写)将数据直接 ...

  2. java 字节 16进制_Java字节数组和16进制字符串的互相转化

    背景基础知识: 1.1. "字符"是由数字来表示的 先来重新了解一下计算机是如何处理"字符"的,这个原理是大家必须记住的,特别是在用JAVA写程序的时候,万万不 ...

  3. java 字符串转utc时间_Java中转UTC时间字符串(含有T Z)为local时间

    在Java中我们需要转换相应格式的字符串,很多时候我们想到用SimpleDateFormat类来解析.但是最近我在调用一个第三方的接口时返回的 JSON字符串中有个expires字段的值是2014-0 ...

  4. java截取前几位_java中怎么截取字符串前几位

    java中可以使用substring()方法截取字符串前几位. substring() 方法返回字符串的子字符串. 语法:public String substring(int beginIndex) ...

  5. java语言 回文判断_java判断回文字符串的几种方法

    java判断回文字符串几种简单的实现: 1.将字符串倒置后逐一比较,实现如下: public class HuiWenTest { /** * @SERLIN */ public static voi ...

  6. java 数组对象属性数组_Java中数组的特性

    数组是基本上所有语言都会有的一种数据类型,它表示一组相同类型的数据的集合,具有固定的长度,并且在内存中占据连续的空间.在C,C++等语言中,数组的定义简洁清晰,而在java中确有一些会让人迷惑的特性. ...

  7. java new数组_Java创建数组的几种方式

    1.一维数组的声明方式: type[] arrayName; 或 type arrayName[]; 附:推荐使用第一种格式,因为第一种格式具有更好的可读性,表示type[]是一种引用类型(数组)而不 ...

  8. java正确定义一维数组_java一维数组定义,创建一维数组详解

    前面给大家介绍了一下什么是java数组,下面要接着给大家介绍的就是java一维数组定的定义以及创建一维数组方面的知识. 数组当中的每个元素都只带有一个下标的时候,这样的数组就是一维数组,一维数组实质上 ...

  9. java指针的数组_java 指针 数组的使用

    package com.tarena.day05; import java.util.Arrays; public class Point { /** *java 指针演示 */ static fin ...

  10. java定义数组_java中数组的三种定义方式_java中数组的定义及使用方法(推荐)...

    java中数组的三种定义方式 java中,数组是一种很常用的工具,今天我们来说说数组怎么定义 [java] view plain copy /** * 数组的三种定义方法 * 1.数组类型[] 数组名 ...

最新文章

  1. CMD用什么命令可以删除服务?
  2. bzoj 4557: [JLoi2016]侦察守卫 树归
  3. JS函数方法Call Apply Bind运用
  4. 作者:许方圆,男,国网能源研究院能源决策支持技术研发中心中级工程师。...
  5. ZZULIOJ 1104: 求因子和(函数专题)
  6. acegis连接使用方法_石渠锚杆连接器,使用方法
  7. 指针作为函数参数 进行内存释放 并置NULL
  8. java guava map创建,数组合并,数组分割连接
  9. 电机学他励直流发电机matlab,直流发电机综合实验指导书(全文5篇)
  10. CATIA怎么约束快捷键_CATIA设置和查看快捷键的方法及系统默认常用快捷键汇总 | 坐倚北风...
  11. Java 读取扫描枪
  12. 大地高、正高、正常高以及GPS测高等若干问题
  13. 《深入理解计算机系统》读书笔记-016(第 12 章 并发编程)
  14. 神奇的Modbus的writeup
  15. Tomcat配置文件信息泄露
  16. ubuntu命令行配置网络
  17. 如何在WPS的word中使用 Mathpix Snipping 和 MathType进行快速输入数学公式
  18. 秀米SVG点击图片换图
  19. 2018苹果App上架App Store审核指南要求
  20. mac java连通r_Mac下安装rJava,xlsx,ReporteRs包

热门文章

  1. TypeError: unorderable types: str() = int()
  2. 1. 少了一个PermMissingElem Find the missing element in a given permutation.
  3. luogu P1892 团伙
  4. [水煮 ASP.NET Web API2 方法论](12-1)创建 OData
  5. php单字母函数(快捷方法)使用总结转载
  6. NOIP2010 提高组 机器翻译
  7. [转载] Python递归遍历目录下所有文件查找指定文件
  8. [转载] python3安装superset踩坑解决过程
  9. Python:Django 项目中可用的各种装备和辅助
  10. 第3章 文件操作-函数练习题