JAVA - 07

Lumi·2021년 6월 2일
0
post-thumbnail

2021-06-02
--> 06에서의 내용을 복습을 한번 더하고 수업듣기를시작
->> 봐도봐도 어려움...ㅠ
---> 다음에 기회가 된다면 천천히 다시 직접 짜볼예정

20강 : 배열(array)

배열 선언하기

  1. int[] arr1 = new int[10];
  2. int arr2[] = new int[10];
    --> arr : 배열의 이름

배열 초기화 하기

  1. int[] arr = new int[]{10,20,30};
  2. int[] arr2 = {10,20,30};
    --> new int는 생략이 가능하다.
  3. int[] arr3;
    arr3 = new int[] {10,20,30};
    --> 먼저 배열을 선언한뒤 초기화 하려면 new int가 반드시 들어가야함

배열의 인덱스를 5개 생성햇다고 5개 모두 채울필요는 없다
--> 하지만 나중에 계산을 하게 될때 오류가 발생함

향상된 for문 사용하기

배열의 n개의 요소를 0부터 n-1까지 순차적으로 순회할 떄 사용.
for( 변수 : 배열){
조건문
}

실습


-> num 변수는 초기에 설정해주지 않았기 떄문에 사용할떄마다 자료형을 붙여주어야 한다(alpha도 동일)

-> 향상된 for문 사용에 익숙해지자(반드시 처음 ~ 끝을 사용할떄만 사용)
-> 알파벳도 컴퓨터 언어로 정수값이 있다.

21강 : 객체 배열 사용하기

기본 자료형과 다르게 객체는 인덱스마다 하나하나 집어 넣어 줘야한다.
--> 이 강의에서는 객체 배열에 어떻게 데이터를 저장하는지를 알려줌

실습1

실습2 [객체 배열 복사하기]

System.arrayCopy(src, srcPos, dest, destPos, length)
1. src : 복사 되는 대상
2. dest : 복사된걸 받는 대상
3. srcPos : src의 몇번쨰 부터 복사를 할지 정함
4. destPos : dest의 몇번쨰부터 붙임을 당할지 정함(보통0)
5. length : srcPos부터 몇개를 복사할지 정함

System.arraycopy(library, 0, copyLibrary, 0, 5);
-> 이 코딩은 주소를 복사해주는 코딩이기때문에 서로 값을 공유하게 해줌
--> 이 방법은 기본 src부분이 바뀌게되면 dest 부분도 같이 바뀌게 된다.

실습3


만약 src가 바뀌었는데 dest부분은 그대로 이기를 원한다면
dest 부분에 하나하나 new함수를 입력해주어야한다.
--> 그렇게 되면 값을 공유하는것이 아닌 값을 전달해주는 코딩이 된다.
--> 그후 src의 get 함수를 이용하여 dest의 set값을 바꾸어 준다.
===> private 함수 이기떄문에 반드시 get, set을 활용

22강 : 2차원 배열 사용하기

평면(이차원배열)이나 공간(삼차원배열)을 활용

2차원 배열 사용법


--> 메모리 상에서는 일렬로 잡힘.
--> 보통 2차원 배열은 중첩for문을 사용함
--> 행을 기준으로 열을 돌린다(바깥쪽 for문 : 행, 안쪽 for문 : 열)

실습

=========== 느낀점 ==========
오늘 공부는 좀 천천히 하나하나 다 따져가면서 했다.
저번에는 일단 아는 정보라서 대충대충 넘어가는 경향이 있었지만
이번에는 나중에 좀더 전문적인 개발자가 되고 싶다는 생각이 들어서 차근차근 시간을 가지고 공부해나갔다.
--> 과거에는 급하게 우다다다 넘어갔지만 오늘부터 차근차근 하나하나 배워가면서 공부해볼 예정이다.

profile
[기술 블로그가 아닌 하루하루 기록용 블로그]

0개의 댓글