>  기사  >  백엔드 개발  >  불변 데이터 유형이란 실제로 무엇을 의미합니까?

불변 데이터 유형이란 실제로 무엇을 의미합니까?

WBOY
WBOY원래의
2024-08-12 18:35:54433검색

What do we REALLY mean by immutable data types?

데이터 유형이 변경 가능하거나 불변인 이유는 무엇입니까?
Python을 예로 들어 보겠습니다.

파이썬의 데이터 유형은 기본적으로 객체 또는 클래스이고, int는 클래스, 부동 소수점, 목록 등입니다.

따라서 x=6이라고 쓰면 값이 6인 새로운 정수 개체가 생성되고 이 개체에서 x라는 참조를 가리킵니다.

이제 클래스를 살펴봐야 합니다. 클래스는 기본적으로 데이터와 함수를 함께 그룹화합니다. 함수는 메소드라고 하며 accessormutator 메소드의 두 가지 유형이 있습니다.

접근자 메서드는 객체의 현재 상태에 액세스하지만 객체 자체를 변경하지는 않습니다. 예:

x = "안녕하세요"
y = x.upper()

여기서 x가 참조하는 객체에 대해 upper 메소드가 호출되고, 상위 접근자는 새 객체, 즉 원래 문자열의 대문자 버전인 str 객체를 반환합니다. (다시 읽어보세요) 기본적으로 원본을 기반으로 새 객체를 반환하지만 이제는 대문자로만 표시됩니다.

반면 Mutator 메소드는 기존 객체의 값을 변경하며 좋은 예는 목록 유형(클래스)입니다.

newList = [1,2,3]
newList.reverse()

이 방법은 기존 객체를 변경하며, 변경 방법은 실행 취소할 수 없습니다.

이러한 변경자 메서드가 없는 데이터 유형은 불변이라고 하며 따라서 접근자 메서드만 포함하며 부족한 데이터 유형은 변경 가능합니다.

도움이 되었기를 바랍니다. 계속해서 호기심을 가지세요 :)

위 내용은 불변 데이터 유형이란 실제로 무엇을 의미합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:마이파이 소개다음 기사:마이파이 소개