繁体   English   中英

如何在while循环内初始化数组并在外部定义它?

[英]How do you initialize an array inside a while loop and define it outside?

我需要能够将数组分配给.txt文件,因此我需要在while循环之外引用变量“ s”。 即使在定义和初始化变量之后,在while循环中进行初始化时仍然会出现错误。 我究竟做错了什么?

 package vp.sga_form_generator;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.*;


public class GUI extends JFrame{
    public GUI() throws FileNotFoundException {

        super("SGA Form Creator - Viper Productions");
            setSize(1000,800);
            setVisible(true);
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setLayout(new GridLayout(30, 2));

            //Opens File
            Scanner names = new Scanner(new File("names.txt"));

    //      String name1 = names.next();
            String[] s;
            while(names.hasNext()){
                s = {names.next()};
            }

            JComboBox names1 = new JComboBox(s);
            JComboBox names2 = new JComboBox(s);

            add(names1);
            add(names2);


    }

}
  1. {names.next()}; 仅在初始化String []时才被允许,因此您可以说类似String []的内容s = {“ bla”,“ bli”,“ blu”}
  2. 问题是String []未初始化
  3. 您无法使用不知道的适当大小初始化字符串。 所以String []不是选择的结构
  4. 如果需要使用String [],则必须生成另一个String [],并在每次添加一个元素时来回复制。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM