Java/[inflearn] 자바 입문 15

[김영한_자바기본][2.기본형과 참조형] (보충) 기본형 / 참조형 - 메서드, 문제 풀이 해석 (p.11-20, p.30-34)

▶ 기본형과 참조형 이해 https://zoooom-in.tistory.com/45 [김영한_자바기본][2.기본형과 참조형] 기본형 / 참조형 이해 (p.1-6) 참조값에 접근한다는 것은 설계도와 부지 위치에 접근해서 같이 공동 작업을 하는 것이다. 기본형은 실제 값이 저장되어 독립적으로 관리되지만, 참조형은 변수에는 객체 위치(참조값)가 저장 zoooom-in.tistory.com 1. 기본형 vs 참조형 - 메서드 호출 [p.11 / 기본형 메서드 호출] 각 스코프로 분리해서 보기 - void로 return받는 값이 없음 public static void main(String[] args) { int a = 10; System.out.println("메서드 호출 전 a = " + a); changeP..

[김영한_자바입문][8.배열] 배열의 선언과 생성 이해하기 (p.2-7)

배열 선언은 아파트 부지 확보, 생성은 몇 개의 아파트를 확보할 것인지배열의 값 할당은 부지를 참조해 실제 준공일을 기입한다. 할당 전까지는 부지 주소만 참조되어 나타난다.[코드 읽기 전, 이해 도모를 위한 예시]1. 배열 선언 및 초기화 == 아파트 및 부지 확보 └─ 아파트 및 부지를 확보한다는 것은 배열을 선언하고 초기화하는 것과 유사하다. └─ int[] apart = new int[5];에서 new int[5]는 아파트와 아파트 부지를 5곳 확보하는 것이다.2. 값 할당 == 준공 시작일 └─ 준공 시작일은 각 '아파트 부지를 참조하여' 자재를 올리기 시작하는 날짜로 비유된다. └─ apart[0] = 1;과 아파트에 값을 할당하는 것은 준공을 시작한 것으로 이해할 수..

[김영한_자바입문][7. 훈련] While_if / switch구문, break / continue (p.23)

1. (while) if-break, switch-break의 쓰임은 다르다. 2. while내 switch-break를 사용할 때, 빠져나가려면 'return / exit'를 사용해라 3. if / else if / else 구문에서 원하는 흐름이 구현되었다면 continue를 사용할 필요 없다. [p.23 / While_if 사용] break : while 구문에서 주로 사용되며, 실행 후 빠져나가는 역할 public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int sum = 0; while (true) { System.out.println("1.상품입력 | 2.결제 | 3. 프로그램 종료"); int op..

[김영한_자바입문][7. 훈련] While_단독 if문 사용 / else 사용 로직 접근 (p.9)

입력 값이 무한 반복에 제한을 걸 상황은 'while'과 'if - break'를 사용해 코드 확인을 최소화하고 단순 제한이 있는 상황은 'if'와 'else'로 나누어 코드 확인을 최소화한다. [if / break 구분] 제한이 없는 무한 반복의 상황, 특정값 출력이 최소화인 상황(0을 출력하는 확률이 매우 적음) public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int sum = 0; while (true) { System.out.println("정수를 입력하세요 (0을 입력하면 종료) : "); int number = scanner.nextInt(); if (number == 0) { break; } ..

[김영한_자바입문][5. 반복문] break / continue 접근 (p.14-15)

break는 반복문을 완전히 종료하고 반복문 밖으로 나가며, continue는 현재 반복을 중단하고 반복문의 처음으로 돌아간다. 또한, 흔히 while 문에서 특정 조건(If구문)을 만족할 때 반복을 종료/재실행한다. [p.14 / break] break는 while 구문 내에서 해당되는 조건을 수행하고 순환을 멈추며 while 밖으로 바로 빠진다. public static void main(String[] args) { int i = 1; int sum = 0; //언제까지 반복할지 모르기 때문에 for구문보다 while문을 사용하는게 더 적절하다고 판단 while (true) { sum += i; if (sum > 10) { System.out.println("현재 i = " + i + ", 현재 s..

[김영한_자바입문][4. 함수] if / else if문 활용 문제 접근 (p.17-19, p.21)

코드를 작성할 때는 각 조건의 범위를 정확히 고려하여, 다양한 조건이 서로 겹치지 않도록 주의해야 한다. [p.17 / 문제1. IF1] 머리속으로 그리기 > 90↑ : A / 80~'90' : B / 70~'80' : C public static void main(String[] args) { int score = 55; if (score >= 90) { System.out.println("학점은 A 입니다."); } else if (score >= 80) { System.out.println("학점은 B 입니다."); } else if (score >= 70) { System.out.println("학점은 C 입니다."); } else if (score >= 60) { System.out.printl..

[김영한_자바입문][4. 함수] if문 활용 삼항연산자 (p.15-16)

'A아니면 B다' 라는 결과 값을 도출할 때 삼항 연산자를 사용하는 것이 유용하다. [p.15 / 단순 if문 작성] public static void main(String[] args) { int age = 18; String status; if (age >= 18) { status = "성인"; } else { status = "미성년자"; } System.out.println("age = " + age + ", status = " + status); } * 가독성: 일반적으로 복잡한 조건을 처리할 때 가독성이 높다. * 다양성: 여러 조건을 처리하거나, 특정 조건에 따라 다양한 동작을 수행해야 할 때 유용하다. * 문장이 복잡할 때: 조건에 따라 수행할 동작이 여러 줄로 이루어져야 할 때 if문이 ..

[김영한_자바입문][4. 함수] if / switch 사용 이해하기(p.11-12)

요약하면, if-else 문은 다양한 조건을 처리하는 데 유연하고, switch 문은 옵션 출력 처럼 변수의 값에 따라 여러 경우 중 하나를 선택하는 경우 효과적이고, switch 표현식은 특히 값 할당과 관련된 간단한 로직에서 간결하고 표현력 있는 방법을 제공한다. [if문 사용 특징] 범위 기반 조건 검사, 복잡한 조건(여러 조건 동시 진행) public static void main(String[] args) { int score = 85; if (score >= 90) { // A grade } else if (score >= 80) { // B grade } else if (score >= 70) { // C grade } else { // Below C grade } } * 용도: if 문은 ..

[김영한_자바입문][4. 함수] if / else if / else 개념 이해하기(p.2-3, p8)

else if / else 사용 시, 여러 조건 중에서 처음으로 참이 되는 조건을 만족하면 그에 해당하는 블록을 실행하고, 나머지 조건들은 확인하지 않아도 된다. [p.2 / if 구문만 사용할 때] age = 18일때, 조건 1과 조건 2 모두 확인해야 함 public static void main(String[] args) { int age = 18; if (age >= 18) { System.out.println(age + "살, 성인으로 확인되었습니다."); } if (age < 18) { System.out.println(age + "살, 미성년자로 확인되었습니다."); } } 상기 코드를 확인할 때, '독립적으로 ' 2가지 조건이 사용되었음을 알 수 있다. 특히 조건 1은 참으로 확인되어 콘솔..

[김영한_자바입문][9. 메서드] 변수 선언 및 초기화 (p.30)

switch 문에서 사용될 동적인 값인 amount를 미리 선언하여, 각 case에서 값을 입력받고 메소드에 전달하기 위해 변수를 초기화하지 않은 것이다. ▶ 기존 코드 작성 내용 참고 https://zoooom-in.tistory.com/27 [김영한_자바입문][4. 조건문] 변수 선언 및 초기화 (p.11) [교재에 표기된 코드] _ coupon 변수 선언 public static void main(String[] args) { int grade = 2; int coupon; if (grade == 1) { coupon = 1000; } else if (grade == 2) { coupon = 2000; } else if (grade == 3) { coupon = 3000; } else { coupo..