본문 바로가기

JAVA10

TIL-13 자료구조 활용해 레시피 메모장 만들기 자료구조를 학습하는 주차에서 활용하는 문제를 풀었다. 💁‍♀️ 자료구조 요리 레시피 메모장 만들기 입력값 저장할 자료구조명을 입력합니다. (List / Set / Map) 내가 좋아하는 요리 제목을 먼저 입력합니다. 이어서 내가 좋아하는 요리 레시피를 한문장씩 입력합니다. 입력을 마쳤으면 마지막에 “끝” 문자를 입력합니다. 출력값 입력이 종료되면 저장한 자료구조 이름과 요리 제목을 괄호로 감싸서 먼저 출력 해줍니다. 이어서, 입력한 모든 문장앞에 번호를 붙여서 입력 순서에 맞게 모두 출력 해줍니다. 우선 입력값을 받기 위해 Scanner를 사용하고 자료구조명과 요리 제목을 입력받았다. public static void main(String[] args) { Scanner in = new Scanner(S.. 2023. 5. 23.
TIL-12 컬렉션 Set, Map, List, ArrayList, Queue, Stack 컬렉션 자바에서 굉장히 중요한 개념 중 하나! 자바에서 제공하는 배열은 여러가지 한계가 있다 이러한 한계(크기 자동조정, 추가, 삭제, 순회, 필터 등)를 넘을 수 있는 자료구조가 필요한 셈이다. 컬렉션은 여러가지 종류가 있고, 각각의 데이터를 넣고 빼는 방법이 다 다르기 때문에 어떤 컬렉션들이 있고 어떻게 사용하는지 알아보자. 컬렉션의 종류 List : 순서가 있는 데이터의 집합(데이터 중복 허용) - 배열과 비슷 Queue : 한쪽에서 데이터를 넣고 반대쪽에서 데이터를 뺄 수 있는 집합 = 선입선출, FIFO Set : 순서가 없는 데이터의 집합(데이터 중복 허용 안함) - 순서없고 중복없는 배열 Map : 순서가 없는(Key Value) 쌍으로 이루어진 데이터들의 집합(Key값 중복 허용 안함) S.. 2023. 5. 23.
TIL-11 얕은 복사, 깊은 복사 얕은 복사 배열은 참조형 변수이며 실제값이 아닌 실제값의 '주소값'을 가진다. 따라서 대입 연산자 =를 사용하게 되면 주소값만 복사가 된다. 이렇게 주소값만 복사되고 실제값은 1개로 유지되는 것을 얕은 복사라고 한다. 주소값만 복사된다는 것이 무슨 의미일까? 대입된 스택 영역의 참조형 변수(주소값)가 힙 영역의 실제값을 가리킨다. 힙영역의 실제값은 복사가 되지 않는다. 얕은 복사를 실습해보자 Int[] a = {1,2,3,4}; Int[] b = a; b[0] = 3; System.out.println(a\[0\]) // 출력 3 신기하다. b 배열을 수정했는데 a배열의 값까지 수정이 되었다. 이는 가리키고 있는 a배열과 b배열 둘 다 같은 주소값을 가리키고 있기 떄문에 실제값을 수정하면 두 배열 모두 .. 2023. 5. 23.
TIL-9 자바 기초 변수, 문자열, 형변환 프로그램 언어란? 사람이 컴퓨터와 소통하기 위해 만든 도구 컴퓨터는 0과1만을 이해할 수 있다. A언어 핵심기능 입/출력, 문맥 *시스템 : input과 output이 있는 것 B언어 A언어 기능 + 기계식 데이터 타입, 연산기능, 메서드 *메서드 : 행동을 정의한 것 C언어 B언어 기능에 다향한 데이터타입을 정의하고 자료구조에 담을 수 있는 언어 Java C언어 기능+ 공통 실행환경, 클래스, 객체 C언어 기능에 여러 기기에서 실행가능 하도록 도와주는 공통실행환경, 그리고 데이터와 메서드를 담은 클래스를 통해 객체를 만들 수 있는 언어 공통 실행환경이 있어서 여러 기기에서 실행 가능합니다. 여러 기기의 운영체제에서 실행할 수 있는 언어 특히 앱개발에 적합 자바는 세상과 닮아있는 개발언어라서 코드를 이해.. 2023. 5. 22.