일반적인 문제 값으로 전달하는 것과 참조로 전달하는 것의 차이점

값으로 전달하는 것과 참조로 전달하는 것의 차이점

Dec 10, 2019 am 11:50 AM
값으로 전달

값으로 전달하는 것과 참조로 전달하는 것의 차이점

값 전송은 메소드에서 기본 데이터 유형을 전송하는 것을 의미하고, 참조 전송은 메소드에서 참조 데이터 유형을 전송하는 것을 의미합니다.

예를 들어 다음 프로그램 코드 연산에 표시된 대로:                                                          # #🎜 🎜#참고: int는 기본 데이터 유형이므로 메소드에서 전달 및 참조될 때 변경되지 않습니다. 변수

및 arr의 값은 다음에 속합니다. 따라서 메소드가 참조될 때 실제로 전달되는 것은 힙 메모리에 있는 배열의 물리적 메모리 주소이며, 메소드에서 배열이 연산되면 값에 영향을 미칩니다. 배열 내부에 넣고 변경 값으로 전달하는 것과 참조로 전달하는 것의 차이점

Reason:

자바에서는 기본 데이터 유형이 매개변수로 전달되는 것을 값 전송이라고 하며, 이것이 무엇인지

값 전송: 이 메서드에서 변경된 값은 로컬 변수 변경에 속합니다.

이 메서드가 나타나면 아무런 효과가 없습니다( 메소드에 전달되는 기본 데이터 유형은 로컬 변수입니다.)

자바에서는 메소드 매개변수와 참조 데이터 유형이 물리적 메모리 주소 값을 전달합니다. 메서드에서 배열이 변경되더라도 배열의 물리적 메모리 주소는 변경되지 않습니다. 따라서 기본 메서드로 돌아갈 때 배열은 여전히 ​​원래 주소를 가리킵니다.

메모리에 있는 arr 배열의 주소 값이 전달되면 힙 메모리의 연속된 주소가 변경되어 전체 배열에 영향을 미칠 수 있습니다

Special 사례: 문자열 / 기본 데이터형 패키징 클래스는 모두 참조 데이터형이지만, 매개변수가 전달되면 값을 전달한다

위 내용은 값으로 전달하는 것과 참조로 전달하는 것의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

PHP 함수 호출에서 값별 전달 및 참조별 전달 이해하기 PHP 함수 호출에서 값별 전달 및 참조별 전달 이해하기 Apr 16, 2024 pm 02:39 PM

PHP의 함수 호출은 값이나 참조로 전달될 수 있습니다. 기본값은 값으로 전달하는 것이며, 함수는 매개변수의 복사본을 수신하며, 이를 수정해도 원래 값에는 영향을 미치지 않습니다. 참조에 의한 전달은 매개변수 앞에 & 기호를 추가하여 선언되며, 함수는 전달된 변수를 직접 수정합니다. 참조로 전달하는 것은 배열 요소와 같은 외부 변수를 수정하는 함수가 필요할 때 유용합니다.

PHP의 값 전달 방법을 올바르게 이해하는 방법 PHP의 값 전달 방법을 올바르게 이해하는 방법 Mar 08, 2024 pm 03:30 PM

PHP의 값 전달 방법을 올바르게 이해하는 방법 PHP는 웹 개발에 널리 사용되는 스크립트 언어이며, PHP의 매개 변수 전달 방법에는 주로 값 전달과 참조 전달이 포함됩니다. 그리고 PHP에서 값이 전달되는 방식을 이해하는 것은 효율적인 코드를 작성하는 데 중요합니다. 이 기사에서는 PHP의 값 전달 방법을 자세히 설명하고 특정 코드 예제를 사용하여 독자의 이해를 돕습니다. 값 전달 방법의 기본 개념은 변수의 값을 복사하여 함수나 메서드에 전달하는 것입니다. 함수 내의 값에 대한 작업은 영향을 미치지 않습니다.

값에 의한 전달과 참조에 의한 전달이란 무엇입니까? 값에 의한 전달과 참조에 의한 전달이란 무엇입니까? Dec 15, 2023 pm 03:03 PM

값을 전달하는 것은 매개변수의 복사본을 함수에 전달하는 것이므로 함수는 매개변수 자체가 아닌 매개변수 값의 복사본을 받습니다. 함수 내부의 매개변수에 대한 수정 사항은 원래 변수가 아닌 이 복사본에만 영향을 미칩니다. 값. 참조에 의한 전달은 매개변수의 주소나 참조를 함수에 전달하는 것입니다. 즉, 함수는 데이터 복사본이 아닌 원본 데이터에 대한 참조를 받습니다. 함수 내부의 매개변수를 수정하면 원본 데이터에 직접적인 영향을 미칩니다. 이 두 가지 전달 방법에는 서로 다른 프로그래밍 언어 및 시나리오에서 고유한 적용, 장점 및 단점이 있습니다.

Java에서 값 전달과 참조 전달의 차이점에 대한 자세한 분석 Java에서 값 전달과 참조 전달의 차이점에 대한 자세한 분석 Jan 30, 2024 am 08:11 AM

Java에서 값 전달과 참조 전달의 차이점에 대한 심층 분석 Java 프로그래밍에서는 매개변수 전달 상황이 자주 발생하며 매개변수 전달에는 값 전달과 참조 전달이라는 두 가지 방법이 있습니다. 이 두 가지 전달 방법은 Java에서 서로 다른 특성과 적용 시나리오를 가지고 있습니다. 값별 전달(Pass-by-Value)은 함수가 호출될 때 실제 매개변수의 값을 형식 매개변수에 전달하는 것을 의미합니다. 통과 참조

Golang 함수에서 구조체 포인터와 구조체 값 전송의 차이점 Golang 함수에서 구조체 포인터와 구조체 값 전송의 차이점 May 31, 2024 pm 07:43 PM

Go에서는 함수 매개변수를 값이나 포인터로 전달할 수 있습니다. 값 전달은 복사본을 전달하며 복사본 수정은 원래 값에 영향을 주지 않습니다. 포인터 전달은 주소를 전달하고 내용 수정은 원래 값에 반영됩니다. 실제로 포인터 전달은 예를 들어 슬라이스를 정렬할 때 코드를 최적화하는 데 사용될 수 있습니다. 코드를 최적화하고 성능을 향상하려면 올바른 전달 방법을 선택하는 것이 중요합니다.

Java에서 값으로 전달과 참조로 전달의 차이점은 무엇입니까 Java에서 값으로 전달과 참조로 전달의 차이점은 무엇입니까 Jan 16, 2024 pm 04:18 PM

Java 값 전송과 참조 전송의 차이점: 1. 기본 데이터 유형 전송 2. 객체 전송 3. 참조 지정 수정. 자세한 소개: 1. 기본 데이터 유형의 전송 기본 데이터 유형의 경우 Java는 기본 데이터 유형의 변수가 매개변수로 메소드에 전달될 때 값이 아닌 변수의 값을 실제로 전송합니다. 변수 참조. 즉, 메서드에서 이 매개변수를 수정해도 원래 변수의 값에 영향을 미치지 않습니다. 2. 개체 참조의 경우 상황이 다릅니다.

Java에서 값 전달과 참조 전달의 차이점과 그 영향에 대한 자세한 설명 Java에서 값 전달과 참조 전달의 차이점과 그 영향에 대한 자세한 설명 Jan 30, 2024 am 09:08 AM

Java에서 값 전달과 참조 전달은 모든 Java 프로그래머가 이해해야 하는 중요한 개념입니다. 이 기사에서는 두 가지의 차이점을 자세히 설명하고 독자가 이 개념을 더 잘 이해할 수 있도록 관련 코드 예제를 제공합니다. Java에서는 모든 매개변수 전달이 값 전달을 통해 이루어집니다. 즉, 변수를 매개변수로 메소드에 전달할 때 실제로 메소드에 전달되는 것은 변수 값의 복사본입니다. 따라서 기본 유형이든 참조 유형이든 전달되는 것은 해당 값의 복사본이며

Java에서 값에 의한 전달과 참조에 의한 전달의 차이점과 그 영향에 대한 심층 연구 Java에서 값에 의한 전달과 참조에 의한 전달의 차이점과 그 영향에 대한 심층 연구 Jan 30, 2024 am 08:27 AM

Java에서 값 전달과 참조 전달의 차이점과 의미에 대한 심층 분석 Java 프로그래밍에서 값 전달과 참조 전달은 매개변수를 전달하는 두 가지 일반적인 방법입니다. 그러나 초보자에게는 이 두 전달 방법의 차이점과 프로그램에 미치는 영향을 이해하는 것이 다소 혼란스러울 수 있습니다. 이 기사에서는 Java의 값별 전달 및 참조별 전달의 개념을 자세히 살펴보고 구체적인 코드 예제를 통해 차이점과 영향을 설명합니다. 먼저 값 전달과 참조 전달이 무엇인지 이해해 보겠습니다. Java에서는 매개변수를 메소드에 전달할 때 다음을 수행할 수 있습니다.