Java 代码保持打印为空
这段代码应该读取多个购物清单的一个文本文件,然后将它们拆分为一个单独购物清单的数组列表。然后它应该将arraylist的每个元素(每个单独的杂货店列表)按行拆分为一个新的arraylist。所以它几乎就像arraylist中的数组列表。这个代码是否适用于此?当我尝试在main方法中使用getArray方法获取数组,然后打印数组时,它一直打印null。怎么了Java 代码保持打印为空,java,arrays,null,Java,Arrays,Null,这段代码应该读取多个购物清单的一个文本文件,然后将它们拆分为一个单独购物清单的数组列表。然后它应该将arraylist的每个元素(每个单独的杂货店列表)按行拆分为一个新的arraylist。所以它几乎就像arraylist中的数组列表。这个代码是否适用于此?当我尝试在main方法中使用getArray方法获取数组,然后打印数组时,它一直打印null。怎么了 public class Grocery { Scanner input; String groceryLine;
public class Grocery {
Scanner input;
String groceryLine;
String line;
ArrayList<String> grocery = new ArrayList<String>();
String groceryString;
//ArrayList<String> newString = new ArrayList<String>();
String store;
String brand;
String serialNumber;
String[] newString;
public Grocery() throws IOException{
File inFile = new File ("groceryList.txt");
input = new Scanner (inFile);
String grocery;
while (input.hasNext()) {
grocery = input.nextLine();
}
}
public void makeLists() {
while(input.hasNextLine()) {
line = input.nextLine();
if(line.equals("-finish-")){
grocery.add(groceryLine);
} else {
groceryLine = groceryLine + "\n" + line;
}
}
}
public String[] getArray() {
for(int i=0; i<grocery.size(); i++) {
groceryString = grocery.get(i);
newString =groceryString.split("\n");
//store = newString[1];
//brand = newString[4];
//serialNumber = newString[5];
}
return newString;
}
}
公共类杂货店{
扫描仪输入;
弦线;
弦线;
ArrayList=新的ArrayList();
弦乐杂货店;
//ArrayList newString=新的ArrayList();
字符串存储;
串品牌;
字符串序列号;
字符串[]新闻字符串;
公共杂货店()抛出异常{
File infle=新文件(“groceryList.txt”);
输入=新扫描仪(填充);
细绳杂货店;
while(input.hasNext()){
杂货店=input.nextLine();
}
}
公共void生成列表(){
while(input.hasNextLine()){
line=input.nextLine();
if(行等于(“-finish-”){
添加(groceryLine);
}否则{
groceryLine=groceryLine+“\n”+行;
}
}
}
公共字符串[]getArray(){
对于(int i=0;i删除此
String grocery;
while (input.hasNext())
{
grocery = input.nextLine();
}
然后调用makeLists。makeLists也需要将“input”作为参数粘贴groceryList的示例格式。TXT第一个while循环的要点是什么?你在哪里定义groceryLine?我尝试时你的代码不会编译。这会编译吗?在我看来有点混乱newString=groceryString.split(System.getProperty(“line.separator”);
如何将“input”作为参数?公共void生成列表(扫描仪输入)
也许吧?还有,为什么我必须删除该循环?删除它是因为它没有任何用处!它也很混乱。字符串杂货店
与ArrayList杂货店=新ArrayList同名();