我有点困惑。我无法在任何地方找到答案 ;(
我有一个字符串数组:
String[] arr = ["1", "2", "3"];
然后我通过以下方式将其转换为字符串:
String str = Arrays.toString(arr);
System.out.println(str);
我本希望得到字符串 "123"
,但我得到了字符串 "[1,2,3]"
。
在Java中该怎么做呢?我正在使用Eclipse IDE。
我有点困惑。我无法在任何地方找到答案 ;(
我有一个字符串数组:
String[] arr = ["1", "2", "3"];
然后我通过以下方式将其转换为字符串:
String str = Arrays.toString(arr);
System.out.println(str);
我本希望得到字符串 "123"
,但我得到了字符串 "[1,2,3]"
。
在Java中该怎么做呢?我正在使用Eclipse IDE。
对于基于Spring的项目:
org.springframework.util.StringUtils.arrayToDelimitedString(Object[] arr, String delim)
对于Apache Commons用户,有一组很好的join方法:
org.apache.commons.lang.StringUtils.join(Object[] array, char separator)
Arrays.toString是格式化输出(添加了方括号和逗号)。你应该实现自己的toString方法。
public String toString(String[] arr){
String result = "";
for(String s : arr)
result+=s;
return result;
}
Arrays.toString(strArray).replace(",", "").replace("[", "").replace("]", "");
Java 8引入了一种新的String join方法:public static String join(CharSequence delimiter, CharSequence... elements)。
String.join("", strArray);
简单来说,Arrays.toString(arr)只是一种方便打印原始数组内容的方式。
Arrays.toString(arr)
并不会直接打印数组...它只提供要打印的字符串。 - Logan Murphypackage arraytostring.demo;
import java.util.Arrays;
public class Array2String {
public static void main(String[] args) {
String[] array = { "1", "2", "3", "4", "5", "6", "7" };
System.out.println(array2String(array));
// output is: 1234567
}
public static String array2String(String[] array) {
return Arrays.toString(array).substring(1, (3 * array.length - 1))
.replaceAll(", ", "");
}
}
Scala 让这个过程更加简单、清晰和安全:
scala> val a = Array("1", "2", "3")
a: Array[String] = Array(1, 2, 3)
scala> val aString = a.mkString
aString: String = 123
scala> println(aString)
123
对于那些在Android上开发的人,可以使用TextUtils。
String items = TextUtils.join("", arr);
假设arr是String[] arr= {"1","2","3"};
类型的数组
输出将为123
使用Java 8的示例。
String[] arr = {"1", "2", "3"};
String join = String.join("", arr);
希望这能有所帮助
are
改为 arr
。 - MarredCheeseObject类有toString方法。所有继承它的其他类都会覆盖toString方法,因此对于数组,也是以这种方式覆盖toString方法。因此,如果您希望以自己的方式输出结果,则需要创建自己的方法,以便获得所需的结果。
str="";
for (Integer i:arr){
str+=i.toString();
}
String newString= Arrays.toString(oldString).replace("[","").replace("]","").replace(",","").trim();