배열과 메서드

노건우·2023년 7월 5일
0

변수의 scope

변수는 자신보다 하위 블록으로는 침투할 수 없다.

위의 사진에서 보듯이 오류가 발생하여 돌아가지 않는다.

또한 자신이 선언된 블록 밖으로는빠져나갈수 없다.

배열

  • 배열이란?
    변수를 그룹으로 묶는 형태의 한 종류로서 사뭉함 같은 형태를 갖고 있으며,
    하나의 배열안에는 같은 종류(데이터형)의 값들만 저장될 수 있다
  • 배열의 선언
    데이터형[]배열이름;
  • 배열의 생성 - 변수를 저장할 수 있는 사물함을 생성한다고 볼 수 있다.
    배열이름 = new데이터형[크기];
    -예
    int[]grade; //여러개의 int형 변수를 저장할 수 있는 배열생성
    grade = new int[3]; 배열의 칸을 3칸으로 할당
    -배열의 선언과 크기 지정에 대한 일괄처리
    데이터형[] 배열이름 = new데이터형[크기];


    그림에서 볼 수 있듯이 둘리같은 경우는 일일이 배열을 선언하고 값을 할당해주었고, 도우너 같은 경우 배열 선언을 일괄 처리했다. 또치는 생성 자체를 일괄적으로 처리했음을 볼 수 있다.

  • 배열을 이용한 덧셈 및 평균 구하기

    여기서 주목해야 할 점은 i를 어디까지 반복 시키느냐이다. 둘리를 예로 들어보면,
    i<dooley.lenth 인데, dooley.lenth는 배열의 길이를 말하고 있다. 이렇게 배열의 길이만큼 반복해주면, 나중에 새로운 요소가 들어와 배열이 길어졌을 때도 유동적으로 적용이 가능하다.

  • 1차원 배열
    행에 대한 개념이 없고 열에 대한 개념만존재하기 때문에 "배열이름. length"는 몇 칸인지를 알아보는 기능이 된다.

  • 2차원 배열
    말은 거창한 것 같지만 실상은 그렇게 복잡하지 않다.
    [][] 이것이 2차원 배열인데, [][][]이렇게 된다면 3차원 배열이다. 하지만 3차원 배열은 개발에 있어 크게 중요하게 다루지는 않는 것 같다. 나중에 3차원 배열도 다룰 일이 있다면 정리해 놔야겠다.

  • 2차원 배열 정리

행, 열에 대한 인덱스를 통하여 값을 대입한다.
배열이름[행][열] = 값;
행의 길이
-1차 배열의 길이는 2차 배열에서는 행의 크기로 조회된다.
int rows = grade.length;
열의 길이
-열의 길이는 각 행에 대해 개별적으로 조회해야 한다.
int cols = grade[행].length;

메서드

  • 메서드란?
    특정 기능(=연산)을 그룹화해서 재사용하기 위한 단위를 말한다.

  • 메서드의 파라미터
    자바 프로그램의 메서드는 자신이 실행되는데 필요한 조건값을 메서드 이름 뒤의 괄호 안에서 변수 형태로 선언한다. 이를 메서드 파라미터(매개변수)라고 한다.

  • 다중 파라미터
    메서드가 연산을 수행하는데 두 개 이상의 파라미터가 필요하다면, 콤마로 구분하여 선언할 수 있다.

			public static void 메서드이름(int x,int y, ...)
  • 값을 반환하는 메서드
    메서드가 연산결과를 자신이 호출된 위치에 반환하는 것을 "리턴"이라고 하며, 반환되는 값을 "리턴 값"이라고 한다.

    메서드 안에서 값을 리턴하기 위해서는 return이라는 키워드가 사용된다.

값을 리턴하는 메서드는 선언시에 "void"키워드 대신, 리턴하는 값에 대한 변수형이 명시된다. void는 리턴값이 없다는 의미이다.

  • 메서드 간의 상호호출
    자바 메서드 역시 서로 호출하는 것이 가능하다.
    호출된 메서드가 값을 리턴하는 경우,리턴받은 값을 다른 연산자에 사용할 수 있다.
profile
초보 개발자 이야기

0개의 댓글