gpt4 book ai didi

java - 错误: The local variable jars may not have been initialized

转载 作者:行者123 更新时间:2023-12-02 11:04:53 25 4
gpt4 key购买 nike

再往下讲,它总是说拖曳局部变量不能被初始化。似乎找不到问题

import java.io.*;
import java.util.Scanner; //Scanner method

public class Popcorn1 {

public static void main(String args[]) throws FileNotFoundException{

printHeader();

File file;

do {
Scanner in = new Scanner (System.in);
System.out.println("Enter the the file name");
String filename = in.next();

file = new File(filename);
} while(!file.exists());

FileReader inputFile = new FileReader (file);
Scanner inFile = new Scanner(inputFile);

System.out.println(" PopCorn Co-op");
System.out.println(" Production in Hundreds");
System.out.println(" of Pint Jars Per Acre");
System.out.println(" 1 2 3 4 5 6");
System.out.println("Farm Name ---|---|---|---|---|---|");
System.out.println();

// Printing out title and table header for reader to easily read data
String errorMSG = " ";

while (inFile.hasNextLine()) {
String inputLine = inFile.nextLine();
//System.out.print(inputLine);
int position;
String name;
int jars;
double acres;

position = inputLine.indexOf(','); //Get the Location of the comma to use as a delimiter

name = inputLine.substring(0,position); //Everything to the left of the comma is the farm name

System.out.printf("%-31s", name);

inputLine = inputLine.substring(position + 2,inputLine.length()); //rest of the string
Scanner line = new Scanner(inputLine);

if(line.hasNextDouble())
acres = line.nextDouble();
else
errorMSG += "There is missing data";

if(line.hasNextInt())
jars = line.nextInt();
else
errorMSG += "There is missing data";

int starsConversion =(int)(jars/acres/25); **<-------- problem is here**

for (int i = 1; i < starsConversion; i++) {
if( i == 20)
System.out.print("#");
else
System.out.print("*");
}
if (starsConversion < 20) {
for (int i = 1; i < (21 - starsConversion); i++) {
System.out.print(" ");
}
System.out.print("|");}
System.out.println(); //go to the next line

}

System.out.println(errorMSG);

}
}

最佳答案

有一个执行路径,从未初始化jars,特别是如果line.hasNextInt()false

要使用它,必须确保jars总是初始化为某种东西。您可以将其初始化为在0之前说if

关于java - 错误: The local variable jars may not have been initialized,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19329237/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com