亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我想調整輸出

我想調整輸出

HUH函數 2022-06-23 09:13:26
使用以下 java 代碼編輯數據,結果如下所示[Aba , heim , 2001436][Eler , Nord , 2002696][Abe , walde , 1999297][Mann , Bor , 2005161]  不幸的是,這對我沒有幫助,我想更改輸出,使其看起來像這樣Aba ~ heim ~ 2001436Eler ~ Nord ~ 2002696Abe ~ walde ~ 1999297Mann ~ Bor ~ 2005161這是代碼import java.io.*;import java.util.*;import java.util.stream.*;public class Test {    public static <R> Stream<R> streamOf(Iterator<R> it) {        return StreamSupport.stream(Spliterators.spliteratorUnknownSize(it, Spliterator.ORDERED), false);    }    public static <R> Stream<R> reverse(Stream<R> s) {        return streamOf(s.collect(Collectors.toCollection(ArrayDeque::new)).descendingIterator());    }    public static String[] reorder(String[] row) {        int skip = row.length > 2 ? 2 : 1;        String last = reverse(Stream.of(row).skip(skip).map(s -> s.toLowerCase().startsWith("jg.") ? s.substring(3) : s)                .map(String::trim).filter(s -> !s.isEmpty()).filter(x -> Character.isDigit(x.charAt(0))))                        .collect(Collectors.joining());        String[] result = new String[3];        result[0] = row[0];        result[2] = last.isEmpty() ? null : last;        if (skip == 2) {            result[1] = row[1];        }        return result;    }    public static void main(String[] args) throws Exception {        String str = "Aba ~ heim ~ 436~Jg.2001\n" + "Abe ~ Nord ~ 696 ~Jg.2002\n" + "Eler ~ walde ~297~Jg.1999\n"                + "Mann ~ Bor~ 161~Jg.2005\n";        new BufferedReader(new StringReader(str)).lines().filter(l -> !l.isEmpty()).map(l -> l.split("~"))                .map(Test::reorder).map(Arrays::toString).forEach(System.out::println);    }}
查看完整描述

1 回答

?
撒科打諢

TA貢獻1934條經驗 獲得超2個贊

更改此行:

new BufferedReader(new StringReader(str)).lines().filter(l -> !l.isEmpty()).map(l -> l.split("~"))
            .map(Test::reorder).map(Arrays::toString).forEach(System.out::println);

new BufferedReader(new StringReader(str)).lines().filter(l -> !l.isEmpty()).map(l -> l.split("~"))
                .map(Test::reorder).map(l->String.join("~", l)).forEach(System.out::println);



查看完整回答
反對 回復 2022-06-23
  • 1 回答
  • 0 關注
  • 77 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號