슈퍼코딩/주특기(JAVA)

2024.04.26(금) 슈퍼코딩 신입연수원 4주차 Day 5 후기 - 반복문, 배열

곰돌이볼 2024. 4. 29. 08:38
  • 강의
    • 19강(자바 반복문 v2) ~ 22강(wrap-up)

반복문


  • 반복문
    • 이중 반복문 : for문 안에 for문 존재
    • continue : 반복문 실행 중 continue문은 만나면 아래 실행문이 동작하지 않고, 바로 조건 검사로 이동
    • break : 반복문 탈출
  • 이중for문을 이용한 구구단 만들기
public class Gugudan {
	public static void main(String[] args) {
    	int dan; // 단
        int hang; // 행
        
        for(dan=2; dan<=9; dan++) {
        	for(hang=1; hang<=9; hang++) {
            	int reault = dan * hang;
                System.out.println("%d * %d = %d", dan, hang, result);
            }
        }
    }
}

 


배열(Array)


  • 선언 예시) int[] arr = new int[20];
    • 타입 선언 : int
    • 초기화 : new
    • 크기 : 20
  • ArrayIndexOutOfBounds : 유효하지 않은 값을 접근할 때, 에러 발생
  • 인덱스 : 0 ~ (배열의 크기)-1
  • 다차원 배열 : [행][열]
  • 복사
    • 얕은 복사 : 메모리 상에 데이터가 저장된 주소 복사
      • 대입 연산자(=)를 이용한 배열 복사
    • 깊은 복사 : 메모리 상에 똑같은 데이터를 만드는 데이터 복사
      • 리터럴, 상수
      • Arrays.copyOf(복사할 배열), 복사할_배열.clone() 를 이용한 배열 복사(1차원 배열인 경우만 사용 가능)
    • 2차원 배열의 깊은 복사
      • for문과 clone을 이용해서 row별 복사 진행

Java Program Arguments


  • = Command-Line Arguments
  • main 메서드의 인자값("public static void main(String[] args" 중 args)
  • 터미널 명령어
    • java test word1 word2
    • 이렇게 입력 시 main 메서드에서 args[0] = word1, args[1]= word2 로 입력됨
    • IntelliJ의 "Create Run Configuration" 또는 "Modify Run Configuration"을 통해서 인자값 넣기 가능