본문 바로가기

Java/[패스트캠퍼스] 100% 환급 챌린지

패스트캠퍼스 환급챌린지 16일차 미션 (2월 16일) : 시그니처 백엔드 Path 초격차 패키지 Online. 강의 후기

https://fastcampus.co.kr/dev_online_besignature
수강 강의명

강의 내용

[1] 기본 배열과 객체 배열(실습)

[2] 이미지를 표현하는 2차원 배열

 

[1] 기본 배열과 객체 배열(실습)

기본 배열 vs. 객체 배열

기본 배열
기본 데이터를 다루는 배열(일반 배열)
기억 공간 하나 하나에 기본 자료가 들어가는 것
float[] f = new float[3];
f[0] = 17.4f
f[1] = 59.2f;
f[2] = 34.8f;

객체 배열
객체 여러 개를 저장하여 다루는 배열
기억 공간 하나 하나에 객체 자료가 들어가는 것
Book[] b = new Book[3];
b[0] = new Book();
b[1] = new Book();
b[2] = new Book();

 

Q. 영화 3편을 저장할 배열을 생성한 다음 영화 3편의 데이터를 저장하고 출력하시오.
      Movie[] m = new Movie[3];
      영화 3편을 저장할 기억 공간 3개를 만들어야 함
      (1) 영화 3편을 저장하기 위해 변수 3개를 배열 형태로 만듦
      (2) 생성된 번지를 배열의 변수에 넣음

      m[0] = new Movie();
      영화 3편의 데이터를 저장할 객체를 만들어야 함
      (1) 메모리에 객체를 생성
      (2) 생성된 번지를 변수에 넣어야 기억 공간에 영화 한 편이 저장된다.
public class ObjectArrayExam {
    public static void main(String[] args) {
        // Q. 영화 3편을 저장할 [배열을 생성]한 다음 영화 3편의 데이터를 저장하고 출력하시오.
        Movie[] m = new Movie[3];
        m[0] = new Movie();    // 객체 생성(영화 한 편)
        m[0].mtitle = "A영화";  // 데이터 넣음
        m[0].mmajor = "가길동";
        m[0].mtime = 160;
        m[0].mlevel = 15;
        m[0].mday = "2023-01-15";

        m[1] = new Movie();
        m[1].mtitle = "B영화";
        m[1].mmajor = "나길동";
        m[1].mtime = 180;
        m[1].mlevel = 12;
        m[1].mday = "2023-01-11";

        m[2] = new Movie();
        m[2].mtitle = "C영화";
        m[2].mmajor = "다길동";
        m[2].mtime = 140;
        m[2].mlevel = 18;
        m[2].mday = "2022-11-16";

        // 반복문
        for (int i = 0; i < m.length; i++) {
            System.out.println(m[i].mtitle + "\t" + m[i].mmajor+ "\t" + m[i].mtime+ "\t" + m[i].mlevel+ "\t" + m[i].mday);
        }
    }
}

 

[2] 이미지를 표현하는 2차원 배열

1차원 배열 vs. 2차원 배열

Q. [3명 학생]의 [3개 과목] 성적(국어, 영어, 수학)을 처리해야 되는 경우

 

1차원 배열

1차원 배열을 3개 만들어야 함
과목의 점수를 저장하도록은 가능하지만, 학생을 표현하기에는 한계

각각 개별로 존재하기 때문에 반복문을 사용할 수 없음

학생의 수(30명, 300명,,)가 늘어날 때마다 배열을 생성해야 함(비 효율적)

new int[과목];
int[] kor = new int[3];  // 한 사람
int[] eng = new int[3];  // 한 사람
int[] mat = new int[3];  // 한 사람

 

2차원 배열
2차원 배열을 1개 만들어야 함

데이터가 인접되어 있기 때문에 학생 데이터라 볼 수 있음

행과 열로 만들어지기 때문에 여러 데이터 저장 가능

연속적인 구조를 갖기 때문에 반복문 사용 가능

new int[학생][과목];
int[] score = new int[3][3];

 

Q. 영상 처리에서 이미지를 처리할 때 사용
*Pixel(픽셀) : 화소라고도 하며 디지털 이미지를 구성하기 위한 최소 단위
색상(0~255)
- 0에 가까울 수록 검정색 색상을 띔
- 255에 가까울 수록 하얀색 색상을 띔
숫자를 조합하여 색상을 표현하므로 숫자 하나하나가 일종의 픽셀
픽셀 하나를 프로그램으로 가져오려면 [256][256] : 2차원 배열을 만들어야 함

 


 

수강 화면수강 화면
수강 화면

 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.

https://bit.ly/48sS29N

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr