第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何為類中的 ArrayList 賦值?

如何為類中的 ArrayList 賦值?

瀟湘沐 2021-12-22 18:59:05
很長一段時間以來,我一直無法弄清楚為什么您似乎無法在不出錯的情況下為 ArrayList 賦值。第一個代碼塊是主要方法,它從文本文件中逐行獲取并使用分隔符拆分行。第一個字符串作為 long 存儲在一個變量中,然后其他 9 個字符串存儲在一個 ArrayList 中。它對文件中的每一行執(zhí)行此操作。我已經(jīng)多次調(diào)試這段代碼,它表明數(shù)組正在獲得正確的值。問題是當(dāng)代碼到達它調(diào)用插入的部分時,我已經(jīng)在代碼中注釋過了。它首先創(chuàng)建節(jié)點,但是當(dāng)它到達要將第一個 ArrayList 中的值添加到新創(chuàng)建的 ArrayList 的部分時,一切都中斷了。for 循環(huán)停止正常運行,即使達到限制,它也會繼續(xù)增加。我決定省略我也用于這個項目的 BinaryTree 類,因為它可以正常工作。那么我將如何正確分配來自我傳遞給 Node ArrayList 的 ArrayList 的值?package assignment7;import java.io.BufferedReader;import java.io.FileReader;import java.io.IOException;import java.io.PrintWriter;import static java.lang.Long.parseLong;import java.util.Scanner;import java.util.ArrayList;public class Assignment7 {    public static void main(String[] args) throws IOException {    boolean headerLine = true;    String firstLine = "";    String catchLine;    String token;    long s_cid;    ArrayList<String> Arr = new ArrayList<String>();    Scanner delimS;    int count = 0;    BinaryTree snomedTree = new BinaryTree();    try(BufferedReader br = new BufferedReader(new FileReader("Data.txt"))) {        while ((catchLine = br.readLine()) != null) {            for(int i = 0; i < 9; i++){                Arr.add("");            }            if(headerLine){                firstLine = catchLine;                headerLine = false;            }            else{                delimS = new Scanner(catchLine);                delimS.useDelimiter("\\|");                s_cid = parseLong(delimS.next());                while(delimS.hasNext()){                    token = delimS.next();                    Arr.set(count, token);                    count++;                }//運行到這里然后這個插入函數(shù)被調(diào)用                  snomedTree.insert(new Node(s_cid, Arr));            }            Arr.clear();        }    }    try (PrintWriter writer = new PrintWriter("NewData.txt")) {        writer.printf(firstLine);        snomedTree.inorder(snomedTree.root, writer);    }}}
查看完整描述

2 回答

?
守候你守候我

TA貢獻1802條經(jīng)驗 獲得超10個贊

它現(xiàn)在完美無缺。


我將 Node 類更改為:


package assignment7;


import java.util.ArrayList;

import java.util.List;



class Node {


    public long cid;

    public ArrayList<String> Satellite;

    public Node l;

    public Node r;


    public Node(long cid, ArrayList<String> Sat) {


    this.Satellite = new ArrayList<String>(Sat.subList(0, Math.min(9, Sat.size())));

    this.cid = cid;



    }


}

我還確保在每次迭代后將 main 中的“count”變量改回 0。


查看完整回答
反對 回復(fù) 2021-12-22
?
FFIVE

TA貢獻1797條經(jīng)驗 獲得超6個贊

public Node(long cid, ArrayList<String> Sat) {

    this.Satellite = new ArrayList<String>();

    this.cid = cid;

    for(int i = 0; i < Sat.size()-1; i++){


        Satellite.add(Sat.get(i));


    }


}

這里 0<9 是錯誤的,你得到了什么錯誤?


查看完整回答
反對 回復(fù) 2021-12-22
  • 2 回答
  • 0 關(guān)注
  • 347 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號