프로그래밍 언어/Java

[Java] 자바 기본 문법 3

Campus Coder 2023. 4. 17. 20:32
728x90
반응형

반복문

자바 반복문 종류

  • for 문
  • while 문
  • do while 문

 

for문

for (초기문; 조건식; 반복 후 작업) {
    작업문
}

 

초기문 -> 조건식 -> 작업문 -> 반복 후 작업 (-> 조건식 -> 작업문 -> 반복 후 작업)

 

- 초기문, 조건식, 반복 후 작업 생략 가능

 

while문

while (조건식) {
    작업문
}

 

반복 조건이 참이면 반복, 거짓이면 반복 종료

- 반복 조건이 없으면 컴파일 오류

 

do - while문

do {
   작업문
} while (조건식);

 

작업문 -> 조건식 (-> 작업문 -> 조건식)

 

중첩 반복

반복문이 다른 반복문을 내포하는 주고

너무 많은 중첩 반복은 프로그램 구조를 복잡하게 함 -> 2중 또는 3중 반복이 적당

 

반복문 제어

continue

반복문을 빠져나가지 않으면서 다음 반복으로 진행

 

break

반복문 하나를 완전히 빠져나갈 때 사용

- 중첩 반복의 경우 안쪽 반복문의 break문이 실행되면 안쪽 반복문만 벗어남

 

배열

인덱스와 인덱스에 대응하는 데이터들로 이루어진 자료구조

  • 배열을 이용하면 한 번에 많은 메모리 공간 할당 가능

 

같은 타입의 데이터들이 순차적으로 저장

  • 인덱스를 이용하여 원소 데이터 접근
  • 반복문을 이용하여 처리하기 적합

 

배열 인덱스

  • 0부터 시작
  • 인덱스는 배열의 시작 위치에서부터 데이터가 있는 상대 위치

 

10개의 정수로 구성된 배열

일차원 배열 만들기

배열 선언

int intArray [];
char charArray [];

int [] intArray;
char [] charArray;

 

배열 생성

intArray = new int[10];
charArray = new char [20];

int intArray [] = new int [10];
char charArray [] = new char [20];

 

선언과 동시에 초기화

int intArray [] ={0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; //10만큼의 배열 생성

 

잘못된 배열 선언

int intArray [10]; //컴파일 오류, 배열 크기 지정 불가

 

배열 인덱스와 원소 접근

배열 원소 접근

배열 변수 명과 [] 사이에 원소의 인덱스를 적어 접근

- 배열 인덱스는 0부터 시작

- 배열의 마지막 항목의 인덱스는 (배열 크기 - 1)

 

레퍼런스 치환과 배열 공유

하나의 배열을 다수의 레퍼런스가 참조 가능

int intArray [] = new int [5];
int myArray [] = intArray;

 

배열의 크기

배열은 자바에서 객체로 관리

- 배열 객체 내에 length 필드는 배열의 크기를 나타냄

 

배열과 for-each문

for (int k : num) { // num은 배열
}

배열의 각 원소를 순차적으로 접근

 

2차원 배열

선언

int intArray [][];
char charArray [][];

int [][] intArray;
char [][] charArray;

 

생성

intArray = new int [5][10];
charArray = new char [5][20];

int intArray [] = new int [5][10];
char charArray [] = new char [5][20];

 

선언, 생성, 초기화

int intArray [][] = {{0, 1}, {2, 3}, {4,5}};

 

2차원 배열의 length

intArray.length // 2차원 배열의 행의 개수 -> 2
intArray[n].length // n번째 행의 열의 개수

 

비정방형 배열

정방형 배열

각 행의 열의 개수가 같은 배열

 

비정방형배열

각 행의 열의 개수가 다른 배열

비정방형 배열의 생성

int i [][];
i = new int [4][];

i[0] = new int [1];
i[1] = new int [2];
i[2] = new int [3];
i[3] = new int [4];

 

메소드에서 배열 리턴

- 배열의 레퍼런스 리턴

- 메소드의 리턴 타입과 리턴 받는 배열 타입과 일치

- 리턴 타입에 배열의 크기를 지정하지 않음

int [] makeArray() {
    int temp [] = new int [4];
    return temp;
}

배열 리턴 과정

main() 메소드

main()에서 자바 응용프로그램 시작

main() 원형

public static void main(String [] args) {
}

 

main(string [] args) 메소드의 인자 전달

main() 메소드의 매개변수로 명령행 인자의 전달

C:\> java Hello abc 3 5.7
/*
args[0] => "abc"
args[1] => "3"
args[2] => "5.7"
*/

 

Run 메뉴의 Run Configurations 항목에서 main() 메소드의 인자 나열

Double.parseDouble()을 사용해 문자열을 실수로 변환하여 사용 가능

728x90
반응형

'프로그래밍 언어 > Java' 카테고리의 다른 글

[Java] 자바 기본 문법 4  (0) 2023.04.17
[Java] 자바 기본 문법 2  (0) 2023.04.17
[Java] 자바 기본 문법 1  (2) 2023.04.17
[Java] 자바 이론  (0) 2023.04.17