변수는 자신보다 하위 블록으로는 침투할 수 없다.
위의 사진에서 보듯이 오류가 발생하여 돌아가지 않는다.
또한 자신이 선언된 블록 밖으로는빠져나갈수 없다.
그림에서 볼 수 있듯이 둘리같은 경우는 일일이 배열을 선언하고 값을 할당해주었고, 도우너 같은 경우 배열 선언을 일괄 처리했다. 또치는 생성 자체를 일괄적으로 처리했음을 볼 수 있다.
배열을 이용한 덧셈 및 평균 구하기
여기서 주목해야 할 점은 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는 리턴값이 없다는 의미이다.