Я получаю сообщение об ошибке «Строка 12: переменная sblst уже определена в методе generate (int)» для приведенного ниже кода.Я попытался изменить приведенный ниже код, и я не получаю сообщение об ошибке, когда я объявляю второй и третий список с другим именем.Я новичок в Java и не понимаю, что здесь происходит.Мой вопрос заключается в том, что в цикле while список объявляется несколько раз, но я не получаю сообщение об ошибке.
class Solution {
public List<List<Integer>> generate(int numRows) {
if(numRows==0) return new ArrayList<List<Integer>>(0);
List<List<Integer>> lst = new ArrayList<List<Integer>>(); //check list
List<Integer> sblst = new ArrayList<Integer>();
if(numRows>=1) sblst.add(1); lst.add(sblst); //i=0
if(numRows==1) return lst;
List<Integer> sblst = new ArrayList<Integer>();
if(numRows>=2) sblst.add(1); sblst.add(1); lst.add(sblst); //i=1
if(numRows==2) return lst;
int i=2;
while(i<numRows){
List<Integer> sblst = new ArrayList<Integer>(0);
sblst.add(1);
int j=1;
while(j<i){
int element = lst.get(i-1).get(j-1)+lst.get(i-1).get(j) ;
sblst.add(element);
j++;
}
sblst.add(1);
lst.add(sblst);
i++;
}
return lst;
}
}