集合轉字符串的多方面闡述

一、集合轉字符串拼接

1、集合轉字符串是我們在開發中非常常見的操作。其中,最簡單的方式是利用循環和字符串拼接的方式將集合中的元素拼接成一個字符串:

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
String result = "";
for(String str: list){
    result += str;
}
System.out.println(result);    //輸出結果:ABC

2、使用StringBuilder代替字符串拼接能夠有效提升性能:

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
StringBuilder sb = new StringBuilder();
for(String str: list){
    sb.append(str);
}
System.out.println(sb.toString());    //輸出結果:ABC

3、使用Java 8的Stream API可以更簡潔地實現集合轉字符串的拼接:

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
String result = list.stream().collect(Collectors.joining());
System.out.println(result);    //輸出結果:ABC

二、集合轉字符串數組

1、除了將集合中的元素拼接成一個字符串,我們還可以將集合轉換為字符串數組:

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
String[] arr = list.toArray(new String[list.size()]);
System.out.println(Arrays.toString(arr));    //輸出結果:[A, B, C]

2、使用Java 8的Stream API可以更簡潔地實現集合轉字符串數組:

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
String[] arr = list.stream().toArray(String[]::new);
System.out.println(Arrays.toString(arr));    //輸出結果:[A, B, C]

三、集合轉字符串方法

1、Java中提供了一些現成的方法來將集合轉換為字符串,如:

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
String result = StringUtils.join(list, ",");
System.out.println(result);    //輸出結果:A,B,C

2、如果需求中需要指定集合元素的格式,則可以使用String.format()方法:

List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
String result = list.stream().map(i -> String.format("編號:%d", i)).collect(Collectors.joining(";"));
System.out.println(result);    //輸出結果:編號:1;編號:2;編號:3

四、集合轉為字符串

1、將集合轉為字符串的方式有多種,我們可以使用Arrays.toString()方法:

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
String result = Arrays.toString(list.toArray());
System.out.println(result);    //輸出結果:[A, B, C]

2、我們還可以使用JSON庫將集合轉換為常見的JSON字符串格式:

List<User> userList = new ArrayList<>();
userList.add(new User("Tom", 18));
userList.add(new User("Jerry", 20));
String result = new Gson().toJson(userList);
System.out.println(result);    //輸出結果:[{"name":"Tom","age":18},{"name":"Jerry","age":20}]

五、集合轉json字符串

1、如果我們需要將集合轉換為JSON格式的字符串,可以使用JSON庫中提供的方法:

List<User> userList = new ArrayList<>();
userList.add(new User("Tom", 18));
userList.add(new User("Jerry", 20));
String result = JSONObject.toJSONString(userList);
System.out.println(result);    //輸出結果:[{"age":18,"name":"Tom"},{"age":20,"name":"Jerry"}]

2、使用Jackson庫也可以將集合轉換為JSON格式字符串:

List<User> userList = new ArrayList<>();
userList.add(new User("Tom", 18));
userList.add(new User("Jerry", 20));
ObjectMapper mapper = new ObjectMapper();
String result = mapper.writeValueAsString(userList);
System.out.println(result);    //輸出結果:[{"name":"Tom","age":18},{"name":"Jerry","age":20}]

六、string集合轉字符串

1、string集合轉字符串最簡單的方式是使用String.join()方法:

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
String result = String.join("", list);
System.out.println(result);    //輸出結果:ABC

2、我們也可以使用StringUtils.join()方法轉換:

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
String result = StringUtils.join(list.toArray(), "");
System.out.println(result);    //輸出結果:ABC

七、字符串集合轉字符串

1、字符串集合轉字符串可以使用String.join()方法實現:

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
String result = String.join("", list);
System.out.println(result);    //輸出結果:ABC

2、我們也可以使用StringUtils.join()方法:

List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
String result = StringUtils.join(list.toArray(), "");
System.out.println(result);    //輸出結果:ABC

八、集合內容轉字符串

1、如果集合內容是自定義對象,我們可以重寫對象的toString()方法實現:

public class User{
    private String name;
    private int age;
    @Override
    public String toString(){
        return "姓名:" + name + ",年齡:" + age;
    }
}
List<User> userList = new ArrayList<>();
userList.add(new User("Tom", 18));
userList.add(new User("Jerry", 20));
String result = StringUtils.join(userList.toArray(), "\n");
System.out.println(result); 
//輸出結果:
//姓名:Tom,年齡:18
//姓名:Jerry,年齡:20

2、我們也可以使用Java 8的Stream API對集合內容進行拼接:

List<User> userList = new ArrayList<>();
userList.add(new User("Tom", 18));
userList.add(new User("Jerry", 20));
StringBuilder sb = new StringBuilder();
userList.stream().forEach(user -> sb.append(user.getName()).append(" "));
System.out.println(sb.toString());    //輸出結果:Tom Jerry

九、list集合轉json字符串

1、除了使用JSON庫,我們還可以使用Java 8的Stream API將list集合轉為JSON字符串:

List<User> userList = new ArrayList<>();
userList.add(new User("Tom", 18));
userList.add(new User("Jerry", 20));
String result = "["
             + userList.stream().map(user -> "{\"name\":\"" + user.getName() + "\",\"age\":" + user.getAge() + "}")
             .collect(Collectors.joining(","))
             + "]";
System.out.println(result);   //輸出結果:[{"name":"Tom","age":18},{"name":"Jerry","age":20}]

2、使用Gson庫將list集合轉為JSON字符串:

List<User> userList = new ArrayList<>();
userList.add(new User("Tom", 18));
userList.add(new User("Jerry", 20));
String result = new Gson().toJson(userList);
System.out.println(result);   //輸出結果:[{"name":"Tom","age":18},{"name":"Jerry","age":20}]

原創文章,作者:LNXG,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/144038.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
LNXG的頭像LNXG
上一篇 2024-10-24 15:27
下一篇 2024-10-24 15:27

相關推薦

  • Python字符串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字符串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字符串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • Python中將字符串轉化為浮點數

    本文將介紹在Python中將字符串轉化為浮點數的常用方法。在介紹方法之前,我們先來思考一下這個問題應該如何解決。 一、eval函數 在Python中,最簡單、最常用的將字符串轉化為…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29
  • Python學習筆記:去除字符串最後一個字符的方法

    本文將從多個方面詳細闡述如何通過Python去除字符串最後一個字符,包括使用切片、pop()、刪除、替換等方法來實現。 一、字符串切片 在Python中,可以通過字符串切片的方式來…

    編程 2025-04-29
  • Python如何將字符串1234變成數字1234

    Python作為一種廣泛使用的編程語言,對於數字和字符串的處理提供了很多便捷的方式。如何將字符串“1234”轉化成數字“1234”呢?下面將從多個方面詳細闡述Python如何將字符…

    編程 2025-04-29
  • Python int轉二進制字符串

    本文將從以下幾個方面對Python中將int類型轉換為二進制字符串進行詳細闡述: 一、int類型和二進制字符串的定義 在Python中,int類型表示整數,二進制字符串則是由0和1…

    編程 2025-04-29
  • 用title和capitalize美觀處理Python字符串

    在Python中,字符串是最常用的數據類型之一。對字符串的美觀處理是我們在實際開發中經常需要的任務之一。Python內置了一些方法,如title和capitalize,可以幫助我們…

    編程 2025-04-28
  • Python 提取字符串中的電話號碼

    Python 是一種高級的、面向對象的編程語言,它具有簡單易學、開發迅速、代碼簡潔等特點,廣泛應用於 Web 開發、數據科學、人工智能等領域。在 Python 中,提取字符串中的電…

    編程 2025-04-28
  • Python如何打印帶雙引號的字符串

    Python作為一種廣泛使用的編程語言,在日常開發中經常需要打印帶雙引號的字符串。那麼,如何打印帶雙引號的字符串呢? 一、使用轉義字符 在Python中,我們可以通過使用轉義字符\…

    編程 2025-04-28
  • Python字符串反轉函數用法介紹

    本文將從多個方面詳細講解Python字符串反轉函數,幫助開發者更好的理解和運用。 一、簡介 在Python中,字符串是最基本的數據類型之一。反轉字符串,在開發中也是常見的操作之一。…

    編程 2025-04-28

發表回復

登錄後才能評論