![](/img/trans.png)
[英]Storing my output scraped from website into an array and printing specific part of it
[英]Printing a specific part from an Array List
所以我有一個Arraylist,它持有一個類,如下面的代碼所示。
NewStorage.java
是包含以下代碼的文件的名稱
package postit;
import java.util.ArrayList;
import java.util.Scanner;
public class NewStorage extends NoteInfomation {
Scanner inputID = new Scanner(System.in);
Scanner NoteID = new Scanner(System.in);
int count = 0;
ArrayList<NoteInfomation> Note = new ArrayList<NoteInfomation>(20);
public void printinfo() {
System.out.println("--- Fill note here ---");
}
public void Notestore() {
System.out.println("Enter the note ID you wish to attach the note with\n\n");
inputIDnote = inputID.nextLine();
System.out.println("Enter your note\n\n");
noteDescription = NoteID.nextLine();
System.out.println("" + inputIDnote);
System.out.println("" + noteDescription);
}
public void PrintNotes() {
for (int i = 0; i < Note.size(); i++) {
System.out.println(" " + Note.get(i));
}
}
}
這是名為Postit.java
的主文件,如下所示
package postit;
import java.util.Scanner;
public class Postit {
public static void main(String[] args) {
int MenuOption = 0;
NewStorage G = new NewStorage(); // Case 1 Object
while (MenuOption != 3) {
System.out.println(
"\n--------Note System-------\n" +
"----------------------------\n" +
"1. Create a Note \n" +
"2. View Notes \n" +
"3. Close Program\n" +
"----------------------------\n"
);
Scanner menu = new Scanner(System.in);
MenuOption = menu.nextInt();
switch (MenuOption) {
case 1:
G.printinfo();
G.Notestore();
break;
case 2:
G.PrintNotes();
break;
case 3:
System.out.println("Program is closing");
System.exit(0);
break;
default:
System.out.println("Invalid choice.");
break;
}
}
}
}
最后,這是note.java
文件,其中包含用於數組的NoteInfomation類。
package postit;
class NoteInfomation {
String inputIDnote;
String noteDescription;
}
因此,我的問題是,如代碼中所示,程序應該詢問用戶他們也想為其分配便箋的便箋ID。 然后,用戶可以通過輸入相應的注釋ID來查看他們創建的注釋。 理想情況下,當我以該程序為基礎時,我還希望該程序讓用戶從以前創建的ID列表中進行選擇,以記住創建的便箋的ID不會成為問題。 提前致謝。
您的代碼中有很多錯誤。 您沒有在Notestore()
方法中存儲任何筆記。 PrintNode()
也不起作用。
將您的代碼更改為這樣。
注意Infomation.java
class NoteInfomation {
String inputIDnote;
String noteDescription;
public NoteInfomation(String inputIDnote, String noteDescription) {
this.inputIDnote = inputIDnote;
this.noteDescription = noteDescription;
}
@Override
public String toString() {
return "Id:" + inputIDnote + ", Description: " + noteDescription;
}
}
Nodestore()方法...
public void Notestore() {
System.out.println("Enter the note ID you wish to attach the note with\n\n");
String inputIDnote = inputID.nextLine();
System.out.println("Enter your note\n\n");
String noteDescription = inputID.nextLine(); //No need for two scanner
System.out.println("" + inputIDnote + "\n" + noteDescription);
Note.add(new NoteInfomation(inputIDnote, noteDescription));
}
PrintNotes()方法
public void PrintNotes() {
for (int i = 0; i < Note.size(); i++) {
System.out.println(" " + Note.get(i).toString());
//**or you can also use this
// System.out.println("Id:" + Note.get(i).inputIDnote + ", Description: " + Note.get(i).noteDescription);
}
}
我鼓勵您學習ArrayList的工作方式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.