首頁 >Java >java教程 >如何在 Java 中將文字檔案中的空格分隔整數轉換為 ArrayList?

如何在 Java 中將文字檔案中的空格分隔整數轉換為 ArrayList?

Linda Hamilton
Linda Hamilton原創
2024-12-08 18:35:10673瀏覽

How to Convert Space-Separated Integers from a Text File into an ArrayList in Java?

Java 文字檔案讀取:將空格分隔的值轉換為ArrayList

從文字檔案中讀取資料並將其組織成高效的格式是在程式設計中通常是必不可少的。讓我們探索如何使用 Java 讀取包含空格分隔整數的文字檔案並將它們儲存在 ArrayList 中。

第 1 步:讀取檔案

讀取文字檔案中,您可以使用 Files.readAllLines() 方法,該方法傳回字串行清單。文字檔案的每一行都將表示為此列表中的一個字串。

第 2 步:分割行

要從每行中提取整數值,我們可以對每個字串使用 split() 方法。此方法根據分隔符號將字串拆分為子字串數組。對於空格分隔的值,我們將使用“\s”作為分隔符,它會匹配一個或多個空白字元。

第 3 步:將字串轉換為整數

split() 呼叫產生的每個子字串都代表一個整數。我們可以使用 Integer.valueOf() 方法將這些子字串轉換為整數值。

第四步:將整數加到 ArrayList

最後,我們可以迭代整數數組並使用 add() 將每個整數加入 ArrayList

將它們放在一起

結合這些步驟,我們得到以下Java 代碼片段:

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class TextFileReader {

    public static void main(String[] args) {
        String pathToFile = "/path/to/test.txt";

        try {
            // Read the file into a list of strings
            List<String> lines = Files.readAllLines(Paths.get(pathToFile));

            // Initialize an empty ArrayList to store the integers
            List<Integer> numbers = new ArrayList<>();

            // Iterate over each line
            for (String line : lines) {
                // Split the line into substrings
                String[] parts = line.split("\s+");

                // Convert each substring to an integer and add it to the ArrayList
                for (String part : parts) {
                    int i = Integer.valueOf(part);
                    numbers.add(i);
                }
            }

            // Print the ArrayList to demonstrate it has been populated
            System.out.println(numbers);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

注意: 對於Java 8 及更高版本,有一種使用Stream API 的更簡單、更簡潔的方法。您可以在提供的答案部分找到 Java 8 版本。

以上是如何在 Java 中將文字檔案中的空格分隔整數轉換為 ArrayList?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn