c не может быть преобразован в переменную - Java - PullRequest
0 голосов
/ 17 ноября 2010

У меня проблемы с этим кодом Java:

for(Clause c : clauses)
  {
  if(c.s == 0)
  {
    switch(c.formula.type)
    {

    //LITERAL
    case 0:

      {
          ArrayList<Clause> clauses_without_c = ((ArrayList<Clause>) clauses.clone());
          clauses_without_c.remove(c);
      }
    }
  }
}

И я получил сообщение об ошибке «c не может быть преобразовано в переменную»:

clauses_without_c.remove(c);

В чем проблема?

1 Ответ

0 голосов
/ 17 ноября 2010

Держу пари, что clone () не делает то, о чем ты думаешь.

Если условие является ArrayList, вы должны читать javadocs:

Возвращает мелкую копию этого Экземпляр ArrayList.

Вы должны создать новый экземпляр контейнера и скопировать в него все значения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...