簡體   English   中英

使用全部替換刪除最后一個逗號 Java

[英]Remove last comma Java using replace all

有沒有辦法從這個結果中刪除最后一個逗號?

ID = 1
Name = addsas
Absensi = 20
GajiPokok = 5000000
GajiTotal = 5400000
Tunjangan Makan= 400000
Email = [asdasd,asdasd,]

ID = 4
Name = asdas
Absensi = 20
GajiPokok = 5000000
GajiTotal = 5400000
Tunjangan Makan= 400000
Email = [asdasd,asdas,]

我希望的結果是[asdasd,asdas]最后沒有逗號

這是我的代碼。 那是因為 while 循環阻止了最后一個逗號被刪除嗎?

        JSONArray email = (JSONArray) jsonObject.get("email");
        @SuppressWarnings("unchecked")
        Iterator<String> it = email.iterator();
        System.out.print("Email = ");
        System.out.print("[");
        String a = "";
        while (it.hasNext()) {
             a = it.next() + ",";
            System.out.print(a.replaceAll(", $", ""));
        }
        System.out.print("]");
        System.out.println("\n");
    }

如果您在 Java 8+ 環境中開發,您可以使用 stream api 來解決此類問題:

String result = email.stream().collect(Collectors.joining(","))

Collectors.joining(",")將在列表的項目之間添加逗號,並將省略最后一個元素的逗號。

emails =  List.of("a","b"); 

result = "a,b"; 

emails =  List.of("a"); 

result = "a"; 

將來有可能豐富管道以添加[]

List.of("a").stream().collect(Collectors.joining(",","[","]"))
// produces "[a]"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM