Rumah >Java >javaTutorial >Bagaimana untuk Menyertai Senarai Rentetan di Java dengan Cekap?
Dalam JavaScript, kaedah Array.join() menawarkan cara yang mudah untuk menggabungkan elemen tatasusunan menjadi rentetan tunggal. Adakah Java menawarkan fungsi yang serupa?
Jika anda ingin mencipta fungsi sedemikian dari awal, anda boleh menggunakan StringBuilder:
static public String join(List<String> list, String conjunction) { StringBuilder sb = new StringBuilder(); boolean first = true; for (String item : list) { if (first) first = false; else sb.append(conjunction); sb.append(item); } return sb.toString(); }
Walau bagaimanapun, sejak Java 8, pilihan yang lebih cekap dan elegan adalah tersedia:
Untuk menyertai Senarai
List<String> list = Arrays.asList("foo", "bar", "baz"); String joined = String.join(" and ", list); // "foo and bar and baz"
Untuk koleksi dengan elemen jenis selain String, anda boleh menggunakan Collectors.joining collector with API Strim:
List<Person> list = Arrays.asList( new Person("John", "Smith"), new Person("Anna", "Martinez"), new Person("Paul", "Watson ") ); String joinedFirstNames = list.stream() .map(Person::getFirstName) .collect(Collectors.joining(", ")); // "John, Anna, Paul"
Anda juga boleh mempertimbangkan untuk menggunakan kelas StringJoiner, yang menawarkan pilihan penyesuaian tambahan:
StringJoiner joiner = new StringJoiner(", "); list.stream() .forEach(joiner::add); String joinedFirstNames = joiner.toString(); // "John, Anna, Paul"
Atas ialah kandungan terperinci Bagaimana untuk Menyertai Senarai Rentetan di Java dengan Cekap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!