有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java正则表达式模式,用于将逗号分隔的字符串转换为点分隔的字符串

我想将长数组值转换为特定格式的字符串

例如,longArray={0,1,2,3}将被转换为字符串0.1.2.3

我会做数组。返回[0,1,2,3]的toString(longArray)

现在这个字符串[0,1,2,3]必须转换成0.1.2.3

我已经使用了这个代码,但想看看这个代码是否可以改进

String convertedString = Arrays.toString(longArray).replaceAll(",",".").replaceAll("[\\[,\\],\\s]", "");

我必须提到,我使用的是Java 7,所以不能使用任何Java 8功能,比如streams 致以最良好的祝愿

索拉夫


共 (1) 个答案

  1. # 1 楼答案

        long[] longArray = {0,1,2,3};
        String s = LongStream.of(longArray)
                .mapToObj(Long::toString)
                .collect(Collectors.joining("."));
    

    long数组到long流,每个long映射到一个带有Long.toString(long)的字符串,然后用分隔符.连接

    最初我用String::valueOf代替Long.toString。感谢@Andreas为我们带来了更好的风格