본문 바로가기
카테고리 없음

Java & SpringBoot로 시작하는 웹 프로그래밍 : 자바 인강 6주차

by 호기심_지옥 2022. 1. 4.

벌써 자바 스프링부트로 시작하는 웹 프로그래밍 강의가 막바지로 들어서고있다.

처음 강의를 들었을 때는 8주면 2달 남짓이니 시간 여유가 있겠구나 싶었는데 매주차 강의를 듣고

강의 후기를 작성하다보니 시간이 금방 흐른 거 같다.

6주차에는 저번 주차에 이어서 자료구조에 대해서 배우고있다. 

자료구조란 컴퓨터과학에서 효과적으로 데이터를 수정하고 접근하게끔 자료를 구성하고 관리, 저장하는 것을 말한다.

즉 자료 구조는 데이터들 간의 관계, 데이터값의 모음, 데이터에 쓸 수 있는 명령이나 함수같은 것들을 말하는 것이다.

어떻게 더 효율적으로 데이터를 관리하는지 알고리즘적으로 여러 연산구조를 풀어낸 것이라고 할 수 있을 것이다.

 

그 중 6주차에서 배우는 것 중 배열이있다.

이미 앞의 강의에서 배열에 대해서 배웠지만 arraylist 라는 다른 특징을 가지는 배열이있다.

정보처리기사 자격증을 공부하면서 웬 배열 관련된 게 왜이리 많나 싶었다.. 

Arraylist,  linkedlist 등등.. 각 배열마다 배열속에 넣은 데이터를 꺼내고 삭제하고 추가하고 여러 구조가 달리 되어 있어서 여러가지 배열을 알아야 각각 쓰임새마다 적재적소에 쓰일 수 있을 것이다.

Java에서 스택영역과 힙영역이 있다는 걸 배웠다.

자바에 있는 8가지 원시타입.

정수형 : byte, short, int, long

실수형 : float, double

문자형 : char

boolean.

이 8가지 원시타입은 stack영역에 할당되게 된다.

이 stack은 제한적으로 접근을 할 수 있도록 나열된 구조이다. 후입선출. LIFO( Last In First Out) 마지막 들어온 게 처음으로 나오는 구조이다. 

스택을 구현하려면 일반적으로 사용되는 필수 메소드가 있다.

1) pop : 스택의 가장 마지막에 위치한 데이터값을 빼낸 후 스택에서 삭제한다.

2) push : 스택의 가장 마지막에 데이터를 넣는다.

3) isEmpty : 스택이 empty즉 비어있는지 확인한다.

4) clear : 스택에 있는 모든 데이터를 없애고 스택을 초기화한다.

5) peek : 스택의 가장 마지막에 있는 데이터를 추출한다. pop메소드와는 다르게 스택에서 데이터를 삭제하는 건 아니다.

 

 

먼저 ArrayList를 생성해준다. ArraryList를 사용하기 위해서 객체를 생성하고 import를 해준다.

타입은 인테저로 지정.

 

 

어레이 배열에 add 코드를 이용해서 인테저 타입의 값을 넣어준다.

출력을 해주면 [1,2,7,10,21] 이 나오게 된다.