본문 바로가기
728x90

분류 전체보기530

[ch6-20,21] return문, 반환 값 printGugudan은 dan을 입력하면 그 dan을 출력해주는 메서드 3단을 출력해주고 싶으면 3을 넣어주면 됨 if 문에 입력한 dan의 값 2단부터 9단 사이가 아니면 (return) 더 이상 작업 진행하지 않고 호출한 곳으로 되돌아간다 원래는 메서드 마지막에 return 써야 함 매번 쓰기 귀찮으니 생략하는 것 근데 return문을 생략할 수 있는 경우는, 반환타입이 void 일 때만 가능 반환타입이 void가 아닌 경우, 반드시 return문이 필요 (return문 생략불가) 그나저나 이 작성문에는 문제가 있어서 에러가 발생함 에러 내용: return문이 없음 if 조건식이 참일 땐, return문이 있고 거짓일 땐, 없는 것 이런식으로 참일 때랑, 거짓일 때 return문이 있도록 작성해야 .. 2023. 1. 24.
[ch6-17~19] 메서드 호출 메서드를 호출해야 괄호 안 문장 실행됨 메서드 이름을 먼저 작성 메서드가 작업하는데 필요한 값을 괄호안에 적어준다 (없을 때는 아무것도 안써도 됨) ex) print99danAll(); 구구단을 출력하는데 딱히 add 메서드의 경우엔 값이 2개 있음 (덧셈 하려면 필요한 값들) 값 두 개 주면 int 값 출력 한다는 뜻 print99danAll 메서드의 반환타입은 void 즉, 출력이 없다는 뜻. 내가 작업을 수행하고 그 결과를 줄 게 없다는 의미 3하고 5가 매개변수의 x와 y에 대입됨 3+5 의 값 8이 int result 에 저장된다 그리고 result 변수가 메서드 수행 결과로 반환된다 (return) 메서드 호출할 때 int result 이 부분이 없어도 된다 뒤에 add(3,5)가 메서드 호출.. 2023. 1. 24.
[ch6-14~16] 메서드란? 메서드의 선언부와 구현부 똑같은 코드 2번 들어가는 것 : 코드의 중복 오른쪽 코드는 배열출력을 별도의 메서드로 만든 것 printArr: 메서드 이름 하나의 작업을 하는 코드를 괄호 안에 집어 넣고 하나로 묶은 후 이름을 붙여준 것이 메서드 printArr(numArr) - 메서드 호출 즉, 메서드 사용하는 것 이 3문장이 1줄로 줄어듦 얘 또한 1줄로 줄어듦 메서드 : 작업 단위로 문장들을 묶어서 이름 붙인 것 메서드가 작업을 할 때 필요한 값을 주고 그 결과를 받을 수도 있다 메서드: 한가지 기능만 수행하도록 작성하는게 좋음 메서드: 선언부, 구현부로 구성 반환타입: 메서드가 작업한 작업결과의 타입을 보는 것 add메서드: 두 개 이상의 입력 값이 필요 입력은 0~n개 가능 출력 값은 0~1개 출력(반환타입): 예시에는 작.. 2023. 1. 23.
[ch6-12,13] 클래스 변수 인스턴스 변수 카드의 속성 - 무늬/숫자/폭/높이 객체마다 숫자하고 무늬는 개별 값 : 카드 객체마다 다르게 유지돼야 하는 값 폭,높이 : 모든 객체가 공통적으로 가져야 하는 값 같은 속성이지만, 무늬와 숫자는 개별적이고 폭,높이는 공통적이어야 함 속성 중에 개별적인 것은 iv 공통적인 것은 cv 속성 중에 개별적인 값을 가져야 하는 것은 인스턴스 변수(iv) 를 사용하고 모든 인스턴스가 공통으로 갖는 속성에는 static을 붙여서 클래스 변수(cv)를 씀 객체를 생성 cv는 왼쪽 보단 오른쪽 Card.width = 200; 처럼 써야 함. 클래스 이름이 붙어야 한다 좌측처럼 쓰면 iv로 오해할 수 있다 cv 예시 : 객체생성없이 사용가능 iv 예시 객체를 만들 때 생김 c1 하고 c2 는 서로 다른 객체인데 cv 값.. 2023. 1. 23.
[ch11-15~18] Stack과 Queue 스택: 상자같은 것 밑이 막힌 상자 먼저 넣은게 맨 밑에 깔려있다 스택을 Last In First Out (LIFO) 이라고도 함 (마지막에 넣은게 첫 번째로 나온다) 넣는 것: push 꺼내는 것: pop 큐: 줄서기하고 똑같음 양 끝이 뚤린 상자 꺼내면 젤 첫 번쨰 숫자인 0이 꺼내지는 것 스택과 달리 저장한 순서대로 꺼내짐 저장하는 것: offer 꺼내는 것: poll First In First out (FIFO) (먼저 온 사람이 먼저 나간다) 스택은 배열이 효율적이고 큐는 링크드리스트가 효율적 스택을 사용할 때의 클래스가 있다 Stack st = new Stack(); empty: 비어있는 지 알려줌 true - 비어있는 것 false - 비어있지 않은 것 peek: 상자 맨 위에 뭐가 있는 지.. 2023. 1. 23.
[ch11-12~14] LinkedList 장점: 첫 번쨰 요소 1을 읽어오는 것 하고 마지막 요소를 읽어오는 것 하고 접근시간이 똑같다 단점(1) 한 번 생성하면 크기 변경할 수 없음! 어떻게 해야할까? 1) 더 큰 배열을 생성 2) 기존의 내용 복사하고 3) 참조를 변경해야한다 그렇다고 처음부터 크기를 넉넉하게 해버리면 메모리 낭비 좋은 건 아님 단점(2) 비순차적: 배열 중간에 있는 데이터를 삭제 또는 추가하는 것을 의미 뒤의 데이터들이 이동을 하기 때문에 시간이 많이 걸린다. 중간의 데이터 추가,삭제는 시간이 많이 걸리지만 처음 끝과 마지막 끝은 빠름 배열의 단점: 1) 크기변경불가 2) 추가삭제 시간 多 이 단점들을 보완해서 나온 것 ∴ LinkedLIst 배열은 각 요소가 연속적 (다닥다닥 붙어있음) LinkedList는 각 요소가 어.. 2023. 1. 21.
728x90