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

如何在列表中每第 n 个位置添加新行?

如何在列表中每第 n 个位置添加新行?

慕桂英4014372 2021-09-15 16:48:17
我试图按照标题所说的那样做,但我目前得到了错误的输出,我在这段代码中做错了什么?public void AAAAA(String thetext, int numb)  {    List<String> items = new LinkedList<String>(Arrays.asList(thetext.split(" "))); //split string to individual characters    int len = items.size(); //get size of string    for(int j = 0; j < len; j++){ // loop through list        if(j % width == 0){              items.add(numb, "\n");        }    }     System.out.println(items);  }}文本示例:“你好,我叫鲍勃,我喜欢抚摸可爱的肥狗”预期输出如果numb是 3;hello my nameis bob ilike to petcute fat dogs
查看完整描述

2 回答

?
千巷猫影

TA贡献1829条经验 获得超7个赞

如果您只想为每 3 个单词打印一个换行符(对于 numb = 3),您可以修改您的方法以打印出列表的内容并在那里使用您的模逻辑。无需添加或修改列表。


查看完整回答
反对 回复 2021-09-15
?
SMILET

TA贡献1796条经验 获得超4个赞

尝试结合使用 modula 和附加到新列表


String thetext = "hello my name is bob i like to pet cute fat dogs";

int splitOn = 3;


String arr [] = thetext.split(" ");

List<String> newList = new ArrayList<String>();


StringBuilder buf = new StringBuilder();

for (int x = 0; x < arr.length; x++) {


    buf.append(arr[x]).append(" ");

    if ((x + 1) % splitOn == 0) {

        newList.add(buf.toString());

        newList.add(" ");

        buf = new StringBuilder();

    }

}

newList.add(buf.toString());


for (String line : newList) {

    System.out.println(line);

}


查看完整回答
反对 回复 2021-09-15
  • 2 回答
  • 0 关注
  • 114 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信