본문 바로가기

코린이

혼공자 1주차 3장~5장(2) 본문

자바/혼공 학습단 10기

혼공자 1주차 3장~5장(2)

winsome99 2023. 7. 7. 12:14
반응형

3장 연산자

3_1 연산자와 연산식

연산자의 뜻은 연산에 사용되는 표시나 기호를 뜻하고 연산자와 함께 연산되는 데이터를 피연산자라고 한다.

더보기

ex) x + y

위의 식에서 +가 연산자이고 x, y는 피연산자를 의미합니다.

 

연산자의 종류

자바 언어에서는 다양한 연산자를 제공하고 있다.

연산자와 피연산자를 연산해서 값을 산출하는데 산출되는 값의 타입은 연산자별로 다르다

 

연산자 종류 연산자 피연산자 수  산출값
산술 +, -, *, /, % 이항 숫자
부호  +,- 단항 숫자
문자열 + 이항 문자열
대입 =, +=, -=, *=, /=, %= 이항 다양

 

연산의 방향과 우선순위

더보기

ex) x > 0 && y< 0

프로그램에는 연산자의 연산 방향과 연산자 간의 우선순위가 정해져 있어 && 보다는 <, >의 우선순위가 높아 먼저 계산됩니다. 

 

3_2 연산자의 종류

연산자는 필요로 하는 피연산자의 수에 따라 단항, 이항, 삼항 연산자로 구분된다.

더보기

단항 연산자: x++;

이항 연산자: x - y;

삼항 연산자: (a> b) ? c : d

또 다른 연산자들로는

증감 연산자: ++, --를 말하며 변수의 값이 1씩 증가한다.

비교 연산자: ==, != 등 값이 같은지 다른지 비교해 boolean 값을 산출

논리 연산자: &&, ||, ! 등 논리곱, 논리합, 논리 부정을 수행하고 boolean 값을 산출한다.

대입 연산자: =, +=, -= 등 오른쪽의 값을 왼쪽에 대입하거나 연산 후 대입한다.

 

4장 조건문과 반복문

 

조건문

조건문은 주어진 조건을 판단하여 결과에 따라 실행할 코드 블록을 결정하는 제어 구조이다. 주어진 조건이 참인 경우에는 if문 다음에 나오는 코드 블록을 실행하고, 조건이 거짓인 경우에는 else문 다음에 나오는 코드 블록을 실행한다.

예를 들어, 다음과 같은 코드는 변수 x가 10보다 큰 경우 "x는 10보다 크다"을 출력하고, 그렇지 않은 경우에는 "x는 10보다 작다"을 출력한다.

int x = 15;

if (x > 10) {
    System.out.println("x는 10보다 크다");
} else {
    System.out.println("x는 10보다 작다");
}

 

switch 문은 프로그래밍에서 조건에 따라 다른 코드 블록을 실행할 때 사용되는 제어문으로, switch 문은 하나의 변수나 표현식을 평가하고, 해당 변수 또는 표현식의 값과 일치하는 case 레이블을 찾아 해당하는 코드 블록을 실행한다.

String item = "사과";
int price;

switch (item) {
    case "사과":
        price = 1000;
        break;
    case "바나나":
        price = 1500;
        break;
    case "오렌지":
        price = 1200;
        break;
    default:
        price = 0;
        break;
}

 

반복문

반복문은 동일한 코드 블록을 반복하여 실행하는 제어 구조이다. 반복문은 for문과 while문 두 가지가 있다. for문은 리스트나 문자열 등의 자료형에 대해 반복을 수행하고, while문은 주어진 조건이 참인 동안 반복을 수행한다.

예를 들어, 다음과 같은 코드는 1부터 10까지의 숫자를 출력한다.

for (int i = 1; i <= 10; i++) {
    System.out.println(i);
}

while문을 사용하여 동일한 결과를 얻을 수도 있다.

int i = 1;

while (i <= 10) {
    System.out.println(i);
    i++;
}

break문과 continue문이 있는데 동일 하게 for문, while문, do-while문 내부에서 실행이 되면 break문은 반복을 취소하고, continue문은 증감씩 또는 조건식으로 들어간다.

 

5장 참조 타입

5장은 내용이 많아 간략하게 설명하겠습니다.

자바에서 참조 타입은 객체를 다루기 위해 사용되는 타입으로 기본 데이터 타입과 달리 참조 타입은 객체를 가리키는 주소를 저장하고 있습니다. 참조 타입은 클래스(class), 인터페이스(interface), 배열(array), 열거형(enum) 등이 있다.

참조 변수는 참조 타입을 갖는 변수로, 객체를 가리키는 주소를 저장하고 있어 참조 변수를 선언할 때에는 변수의 타입을 해당 객체의 타입으로 지정한다

참조 변수는 객체의 메모리 주소를 저장하기 때문에 실제 객체는 힙(heap) 영역에 생성되고, 참조 변수는 해당 객체를 가리키게 된다. 따라서 참조 변수를 통해 객체의 속성에 접근하거나 객체의 메서드를 호출할 수 있다.

 

5_2 배열

배열은 동일한 타입의 여러 개의 요소를 담을 수 있는 자료 구조로 배열은 고정된 크기를 가지며, 각 요소는 인덱스를 사용하여 접근할 수 있다. 배열은 선언, 생성, 초기화의 세 단계로 사용

int[] numbers; // 배열 선언
numbers = new int[5]; // 배열 생성
numbers[0] = 10; // 배열 초기화 
int[] numbers = {1, 2, 3, 4, 5}; // 정수형 배열을 선언하고 초기화
int value = numbers[2]; // 인덱스 2에 해당하는 요소의 값 읽기
numbers[3] = 10; // 인덱스 3에 해당하는 요소의 값 수정

 

5_3 열거 타입

열거 타입은 서로 연관된 상수들의 집합을 정의하는 특별한 타입이다. 열거 타입은 몇 개의 고정된 값 중 하나를 가질 수 있는 변수를 만들어야 할 때 유용하게 사용할 수 있다.

열거 타입은 enum 키워드를 사용하여 정의하여 열거 타입 내에서 각 상수는 해당 열거 타입의 인스턴스이다.

public enum Week{
	monday,
    tuesday,
    wednesday,
    thursday,
    friday,
    saturday,
    sunday
}

위의 코드에서 Week은 열거 타입의 이름이고, monday, tuesday, wednesday, thursday, friday, saturday, sunday는 해당 열거 타입의 상수이다.

 

 

switch 문을 통해 열거 타입의 상수를 판별할 수도 있다.

public class WeekExample {
    public static void main(String[] args) {
        Week currentDay = Week.SATURDAY;

        switch (currentDay) {
            case MONDAY:
                System.out.println("월요일입니다.");
                break;
            case TUESDAY:
                System.out.println("화요일입니다.");
                break;
            case WEDNESDAY:
                System.out.println("수요일입니다.");
                break;
            case THURSDAY:
                System.out.println("목요일입니다.");
                break;
            case FRIDAY:
                System.out.println("금요일입니다.");
                break;
            case SATURDAY:
                System.out.println("토요일입니다.");
                break;
            case SUNDAY:
                System.out.println("일요일입니다.");
                break;
        }
    }
}

열거 타입은 상수 값을 명확하게 나타내고, 오타나 잘못된 값의 입력을 방지하는 등의 장점을 가지고 있다.

또한 열거 타입은 추가적인 메서드나 필드를 가질 수 있어서 열거 타입 자체에 동작을 정의하는데 유용하다.

반응형

'자바 > 혼공 학습단 10기' 카테고리의 다른 글

혼공자 chapter08 인터페이스  (0) 2023.07.15
혼공자 Chapter07. 상속  (0) 2023.07.14
혼공자 2주차 미션  (0) 2023.07.14
혼공자 Chapter06. 클래스  (0) 2023.07.14
혼공자 1주차 미션 JDK설치(1)  (0) 2023.07.04
Comments