>  Q&A  >  본문

java中final修饰的变量不是不能被修改吗?为什么可以add添加?

怪我咯怪我咯2719일 전668

모든 응답(4)나는 대답할 것이다

  • 黄舟

    黄舟2017-04-18 10:57:12

    searchableList 변수 자체는 수정이 불가능하지만, searchableList가 가리키는 객체는 수정이 가능합니다.

    회신하다
    0
  • 天蓬老师

    天蓬老师2017-04-18 10:57:12

    이 final의 사용법은 final 변수입니다. 즉, searchableList 변수의 참조는 변경할 수 없고 해당 ArrayList에 잠겨 있지만 ArrayList 자체는 변경될 수 있음을 의미합니다.

    회신하다
    0
  • PHP中文网

    PHP中文网2017-04-18 10:57:12

    Final은 searchableList 변수가 가리키는 힙 메모리 공간을 수정합니다. 예를 들어 searchableList를 수정하면 집이 더 이상 변경되지 않지만 내부 내용도 변경할 수 있습니다. 항목을 추가하거나 업데이트 등을 삭제하세요.

    회신하다
    0
  • 高洛峰

    高洛峰2017-04-18 10:57:12

    최종 수정된 searchableList는 참조입니다. 이 참조는 ArrayList을 가리키므로 searchableList는 수정할 수 없으며 ArrayList는 배열로 구현되며 이 배열에 새 요소를 추가할 수 있습니다.
    searchableList가 가리키는 객체 ed를 수정하려고 하면 오류가 보고됩니다.

    회신하다
    0
  • 취소회신하다