JAVA Scanner
139
작성한 질문수 2
package bufferTest;
import java.util.Scanner;
public class BufferTest {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String a = scan.next();
String[] arr1 = {"a"};
System.out.println(System.identityHashCode(a));
System.out.println(System.identityHashCode(arr1[0]));
}
}
왜 arr[0]과 a의 주소 값이 다른가요..???
답변 주시면 정말 감사하겠습니다!
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
System.identityHashCode() 함수는 객체의 System Identity Hash Code 값을 반환하는데, 이는 객체마다 다른 값을 가집니다. Java에서 String은 immutable(불변)한 객체입니다. scan.next()를 통해 받은 입력 값 a는 새로운 String 객체를 생성하고, 이 객체는 arr1[0]에 저장된 문자열 “a”와 독립적입니다. 즉, 두 문자열이 내용은 같지만 실제로는 메모리 상에서 두 개의 서로 다른 객체로 존재합니다. 그래서 System.identityHashCode()의 결과가 서로 다릅니다.
만약 두 값이 같게 나오길 원한다면, 어떤 방식으로든 두 참조가 같은 객체를 가리키도록 해야 합니다. 예를 들어, 문자열 풀(String Pool)을 이용하거나, 같은 객체 참조를 직접 할당하는 방법이 있죠.
답변이 도움이 되셨길 바랍니다. 추가적인 궁금증이 있으시면 문의해 주세요. 감사합니다!
스프링 빈 등록 방법 2가지 다 알아야하는 이유
0
11
1
mybatis 를 이용한 crud에서 insert에서 resultType='long" 이라고 하셨는데요,
0
10
1
댓글 삭제 로직에서 동시성 문제 발생 가능성
0
14
1
설계 트레이드 오프 링크 접속 안됨
0
28
2
테스트 질문, 어떤것을 사용할것인것에 대해서
0
13
1
Shape 클래스 실습 코드 피드백 요청드립니다
0
18
2
재고 감소와 쿠폰 발급은 왜 서로 다른 방식으로 동시성을 제어하나요?
0
14
0
깃허브주소 궁금합니다.
0
15
2
mariaDB 설정
0
15
1
섹션4 퀴즈 오타있어요.
0
26
1
AWS 배포 성능테스트
0
46
1
조건 반복문 질문: for 문 ?
0
46
1
run() 메서드 안에 지역변수 sum을 사용한 이유
0
66
1
7강 보고 있는데요.. 글자가 너무 작아요
0
31
1
무한 depth 구현 중 CommentPath 관련 질문
0
43
1
헥사고날 아키텍처와 DDD를 적용할 때, 화면에 강하게 연관된 조회 데이터를 어떻게 다루는 게 좋은지 궁금합니다.
0
80
2
정처기 26-2회. 9번 질문드립니다!
0
64
1
이론 보면서 질문이 있습니다.
0
65
2
정보처리기사 실기 26년 2회 SRT 스케줄링 문제 단위 질문
0
76
2
유튜브(정보처리기사 실기 | 26년 2회 기출문제 코드 해설)
0
106
2
262 정처기 실기 C언어코딩
0
38
1
정보처리기사 262 실기 Hash(해시) 질문
0
71
2
static 변수 질문입니다.
0
54
2
Request DTO에서 Entity를 생성할 때 의존성 방향을 반대로 하면 어떨까요?
0
80
2





