[TIL] 06.12 (깃허브 명령어, 얕은복사 & 깊은복사)
📙 오늘 공부 한 것
오늘은, 스파르타코딩클럽에서 제공해준 강의와 대략적인 깃 사용법에 대해 복습을하였다.
깃 명령어
fork: (깃허브사이트에서 다른 사람의 파일들을 나의 래퍼지토리로 옮겨옴)
git clone 깃허브 주소.git (깃허브 주소에있는 repository를 다운로드)
git branch (브랜치명) : 브랜치 생성
git checkout 브랜치명 : 해당 브랜치로 이동
git add .(파일 선택 .은 전체선택)
git conmmit -m "커밋내용"
git push origin (브랜치명)
얕은 복사와 깊은 복사
얕은복사
int[] arr = new int[5]; 같은 경우, arr은 참조형 변수이다.
즉 이 변수는 실제값이 아닌,실제 값의 주소값을 가진다.
(주소값만 복사된다는 것은 변수명은 서로 다르지만, 같은 값을 가리키고 있다는 것을 의미한다,)
int[] a = { 1,2,3,4};
int[] b = a; // 얕은 복사
b[0] = 3; // b배열의 0번 째 순번값을 3으로 수정.
System.out.println(a[0]) // 3으로 출력.
깊은 복사
얕은 복사처럼 가짜 복사가 아니라 진짜 새로운 배열을 똑같이 만들고 싶을때 깊은 복사를 합니다.
// 깊은 복사
int[] a = { 1, 2, 3, 4 };
int[] b = new int[a.length];
for (int i = 0; i < a.length; i++) {
b[i] = a[i]; // 깊은 복사
}
b[0] = 3; // b 배열의 0번째 순번값을 3으로 수정했습니다. (1 -> 3)
System.out.println(a[0]); // 출력 1 <- 깊은 복사를 했기때문에 a 배열은 그대로임.