簡體   English   中英

如何使用BufferedReader從輸入中獲取整數並將其存儲為對象

[英]How to use BufferedReader to take integers from input and store as objects

我正在嘗試建立一個接受用戶輸入的程序(例如'12 20 14 23 08 19'),並創建類'Period(int start,int end)'的對象。 我想將這些對象存儲到數組中,以便可以迭代它們。

import java.io.*;

class myCode
{
public static void main (String[] args) throws java.lang.Exception {
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    String input = br.readLine();
    System.out.println(input);

    //Array for storing period objects
    Period[] array = new Period[];

    //12 20 14 23 08 19

}

public static class Period{

    public int start;
    public int end;

    public Period(int start, int end) {
        this.start = start;
        this.end = end;
    }

    void printPeriod(){
        System.out.println("Start: " + start);
        System.out.println("End: " + start);
    }

  }
}

一個簡單的選擇是將輸入字符串拆分為空白,然后填充句點數組:

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
String[] parts = input.split("\\s+");

Period[] array = new Period[parts.length / 2];
for (int i=0; i < parts.length; i=i+2) {
    int start = Integer.parseInt(parts[i]);
    int end = Integer.parseInt(parts[i+1]);
    Period period = new Period(start, end);

    array[i/2] = period;
}

for循環的邏輯是采取兩個步驟,每個步驟創建並填充一個Period對象。 然后,此Period對象在i/2位置添加到數組。

暫無
暫無

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

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