0

保存したファイルからデータを読み込もうとしています。このコードは、データ「値」を読み取るための一部です。しかし、コンパイラは最後の部分でエラーが発生したと言っています'戻り値;'。「値を変数として解決できない」と表示されます。私は何をすべきか?

public static double[] getValue(){
    FileInputStream fis = null;
    ObjectInputStream ois = null;
    List<Double> newList = new ArrayList<Double>();
    try {
        fis = new FileInputStream("user_data.txt");
        ois = new ObjectInputStream(fis);

       double[] Value = (double[]) ois.readObject();

    } catch (Exception ex) {

        try {
            fis.close();
            ois.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    return Value;
}
4

2 に答える 2

2

ブロックのValue外側で変数を宣言します。tryところで、valueの代わりに名前として使用してValueください。

double[] Value;
try {
        fis = new FileInputStream("user_data.txt");
        ois = new ObjectInputStream(fis);

       Value = (double[]) ois.readObject();

    } 
于 2012-06-21T12:50:29.933 に答える
2

あなたの問題はあなたがValue内側で宣言することですtry、それでそれは外側に見えません。代わりにこれを試してください:

public static double[] getValue(){
    FileInputStream fis = null;
    ObjectInputStream ois = null;
    List<Double> newList = new ArrayList<Double>();
    double[] Value;

    try {
        fis = new FileInputStream("user_data.txt");
        ois = new ObjectInputStream(fis);

        Value = (double[]) ois.readObject();

    } catch (Exception ex) {

        try {
            fis.close();
            ois.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    return Value;
}
于 2012-06-21T12:50:48.643 に答える