10Days) Java기초(3) - 배열

nacSeo (낙서)·2022년 11월 2일
0

◉ 학습목표

1. 배열을 이해하고 활용하여 문제에 적용시킬 수 있다.
2. 페어와 함께 문제풀이를 하며 커뮤니케이션 능력을 향상시킨다.
  1. 배열

⦿ 학습내용

☞ 배열 : 동일한 타입의 값들을 하나의 묶음으로 묶은 자료 구조

✔︎ 요소 (element) : 배열이 가진 각 값
✔︎ 인덱스 (index) : 배열의 각 요소가 부여받는 순번

☞ 배열의 차원 : 배열이 중첩된 정도

✔︎ 1차원 배열 : 배열이 중첩이 없는 경우 (= 배열의 요소가 배열이 아닌 경우)
✔︎ 2차원 배열 : 배열이 한 번 중첩된 경우 (= 배열의 요소가 배열인 경우)

☞ 1차원 배열의 선언과 초기화

✔︎ 1차원 배열

double[] wight = new double[배열의_수];

☞ 기본 타입, 참조 타입

✔︎ 기본 타입 : 값을 변수에 할당하면 해당 변수에는 실제 값이 저장
✔︎ 참조 타입 : 값을 변수에 할당하면 해당 변수에는 주소 값이 저장
※ 배열은 주소값을 나타내므로 참조 타입

☞ 2차원 배열의 선언과 초기화

✔︎ 2차원 배열

int [][] kcal = new int [배열의 수][배열의_수];

☞ 가변 배열 : 배열이 2차원 이상일 때, 마지막 차수에 해당하는 배열의 길이를 고정하지 않는 것

int [][] ages = new int [2][];	// 외부 배열만 생성된 상태
  1. 코플릿(문제풀이) 간 배운 것

⦿ 학습내용

☞ 메서드

✔︎ arr.length : 배열의 길이

✔︎ str.split(String_regex) : 구분자를 바탕으로 배열 형식으로 문자열을 잘라줌

✔︎ str.split(String_regex, int_limit) : 구분자를 바탕으로 배열 형식으로 문자열을 limit 수 만큼 잘라줌

✔︎ Arrays.copyOf(원본_배열, 새로운_배열_크기) : 특정 배열의 원하는 길이만큼 새로운 배열로 복사

✔︎ System.arraycopy(원본_배열, 복사할_원본_배열의_시작_인덱스, 복사본_배열, 복사본_배열의_시작_인덱스, 복사할_개수)

◉ 느낀 점

☞ 산 넘어 산이다 ,, ⛰️ 오늘도 배열의 기본 개념만 이론을 통해 간단히 잡고, 페어와 함께 문제 풀이에 몰두하는 시간을 가졌다. 아직 조건문, 반복문도 마스터하지 못했는데 ,,😂 정말 왜 부트캠프를 하면 수업 이후 시간과 주말 시간 모두 투자해야하는 지 이제 슬 실감이 나기 시작한다. 정말 필요한 거였어!!!!

정보처리기사를 준비할 때 이론적으론 가볍게나마 봐왔던 내용들이었으니 괜찮으려나 했는데 실전은 호락호락하지 않았다. 코플릿들을 푸는데 정말이지.. 바보가 된 기분이었다. 다행히 어제 수많은 문제풀이들을 경험했기 때문에 당황하지 않고 어려운 문제라도 일단은 부딪혀보려 했던 것 같다. 페어가 드라이버턴에 보고 배우는 것도 많았고 내가 스스로 풀며 터득해나가는 것도 많은 뜻깊은 시간이었다 오늘도 :) (아직 문제 다 못푼 건 안비밀🥲) 알려주시는 강사님께서도 문제들을 완벽히 시간안에 다 풀고 이해하라고 넣어둔 문제들이 아니라고 했다. 따라서 어려운 문제들도 많이 부딪혀보고 해결해나가려 생각하고 찾아보고, 직접 몸으로 느껴보라는 뜻이라 어림짐작하게 됐다. 보기에 아무리 무섭고 복잡한 문제더라도 수도코드를 사용해 하나씩 차근히 해내는 법을 이제 조금은 알 것 같다 :)

페어와 문제풀이 후 간단한 계산기 만들기 과제가 주어졌다. 코플릿들을 풀어보니 계산기는 정말 감사한 문제다 🥹 배웠던 git을 활용해 github로 과제를 제출하는 것도 처음해보는 뜻깊고 새로운 경험이었다. 점점 뭔가 개발자가 될 준비를 해내가는 것 같아 뿌듯하다! ☺️

어제부터해서 오늘도 사실 감기기운이 있어 코도 막히고 컨디션이 정말 별로라 점심시간에 집앞 병원을 다녀와 약을 받아올 정도였다. 🥲 6개월이라는 긴 마라톤을 뛰어야하는데 벌써부터 고장나면 안되는데.. 걱정이다 :/ 액뗌이라 생각해야겠지?! 아픈 와중에 수업 착실히 임하고 마치고도 이렇게 남은 코플릿들을 풀고 블로깅을 작성하고 있는 날 보면 긍정적인 면으로 내가 조금씩 변해간다는 생각이 든다 :) 점점 더 성실하고 책임감있는, 보다 더 바르고 선한 영향을 끼치는 사람이 되길 🙏

◉ 내일의 키워드

・ 클래스와 객체
・ 필드와 메서드
profile
백엔드 개발자 김창하입니다 🙇‍♂️

0개의 댓글