#java #insert #arraylist
#java #вставить #arraylist
Вопрос:
ArrayList<String> constraints_list=new ArrayList<String>();
public void setConstraints(ArrayList<String> c)
{
c = constraints_list;
constr = true;
}
я хочу, чтобы ArrayList c был ArrayList constraint_list …
как это сделать?
Комментарии:
1. Я предполагаю, что это Java. Если нет, пожалуйста, измените ваши теги соответствующим образом.
Ответ №1:
Мне не совсем ясно, что вы хотите сделать. Однако ссылки на объекты передаются по значению в Java, поэтому установка значения c
(как в вашем коде) не сработает. Типичный способ установки c
из переменной экземпляра — написать средство получения, а не средство установки:
public ArrayList<String> getConstraints() {
return constraints_list;
}
Затем вы можете сказать:
ArrayList<String> c = getConstraints();
Если, с другой стороны, вы пытаетесь сделать обратное (установить constraints_list из переданного параметра in), то ваше назначение выполнено неверным способом:
public void setConstraints(ArrayList<String> c) {
constraints_list = c;
constr = true;
}
Вам также следует подумать, не лучше ли создать копию списка, и в этом случае вы могли бы сделать:
public void setConstraints(ArrayList<String> c) {
constraints_list = new ArrayList<String>(c);
constr = true;
}