为了账号安全,请及时绑定邮箱和手机立即绑定

通过选择分隔符将二维数组转换为字符串

通过选择分隔符将二维数组转换为字符串

森林海 2022-10-12 10:01:15
如何转换此数组,以便下面代码的输出如下所示。String[][] array = { { "a", "b" }, { "c" } };String lineSeparator = System.lineSeparator();StringBuilder sb = new StringBuilder();for (String[] row : array) {    sb.append(Arrays.toString(row))      .append(lineSeparator);}String result = sb.toString();我需要输出看起来像这样a,b,c 我现在得到这个[a, b][c]
查看完整描述

3 回答

?
ITMISS

TA贡献1871条经验 获得超8个赞

System.out.println(Arrays.stream(array).flatMap(ar -> Arrays.stream(ar)).collect(Collectors.joining(",")));

这是使用 Java 8 流完成的,我不建议像我一样在一行中执行此操作,最好将其保存到变量中然后打印它:)


查看完整回答
反对 回复 2022-10-12
?
慕哥9229398

TA贡献1877条经验 获得超6个赞

改为使用StringJoiner。IdeoneLink:https ://ideone.com/EfodvF

/* package whatever; // don't place package name! */


import java.util.*;

import java.lang.*;

import java.io.*;


/* Name of the class has to be "Main" only if the class is public. */

class Ideone

{

    public static void main (String[] args) throws java.lang.Exception

    {

        String[][] array = { { "a", "b" }, { "c" } };

        StringJoiner sj = new StringJoiner(", ");


        for (String[] row : array) {

            for(String str: row){

                sj.add(str);

            }

        }



        String result = sj.toString();

        System.out.println(result);

    }

}


查看完整回答
反对 回复 2022-10-12
?
慕森卡

TA贡献1806条经验 获得超8个赞

你可以这样做:


String[][] array = {{"a", "b"}, {"c"}};


String s = "";

for (String[] ar : array) {

    for (String c : ar) {

        s += c + ",";

    }

}

if (s.length() > 1)

    s = s.substring(0, s.length() - 1);


System.out.println(s);

我相信你是一个初学者。也许在发布问题之前做一些研究。


https://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html


查看完整回答
反对 回复 2022-10-12
  • 3 回答
  • 0 关注
  • 94 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号