public void ReadCVS() {
    BufferedReader br = null;
    String line = "";
    String cvsSplitBy = ",";
    int nbA,nbB,nbC;
    nbA=nbB=nbC=0;
    String lval="";
    String test;
    double x = 25;
    double y = 100;
    double z = 200;
    double lp1 = 0;
    try {
        ArrayList<String> l1 = new ArrayList<String>();
        br = new BufferedReader(new FileReader(this.filePath));

        while ((line = br.readLine()) != null) {
            //System.out.println(line);
            // use comma as separator
            String[] tempData = line.split(cvsSplitBy);
            allDatakey.add(tempData[0]);
            allDataValue.add(tempData[1]);

            double j = parseDouble(tempData[1]);
}


//我想在这里使用j

      if((j>x)&&(j<y)){

        test ="A";
        if(!lval.equals("A")){
        l1.add(test+String.valueOf(nbA));
        nbA++;
        }
        lval="A";


在这段代码中,双精度j在whileloop内部,我的问题是:如何声明它以便在whillloop缓冲区之外使用它。

最佳答案

声明数组可以在这里看到:How do I declare and initialize an array in Java?

如果要在while循环之外使用tempData变量,也可以将数组复制到新数组中。

如果您只想将变量J移到外面,请执行以下操作:

double j = 0.0;
while (....) {
   j = parseDouble(tempData[1]
}

08-07 04:59