soft IT life

23.01.04 - 증감연산자/if문/반복문(for/while)/배열,이중배열/break, continue 본문

JAVA

23.01.04 - 증감연산자/if문/반복문(for/while)/배열,이중배열/break, continue

softPattern 2023. 8. 1. 01:15

증감연산자

a =1;

b =1;

int a = b++ b를 a에 대입 → 자기자신 1 증가 ⇒ a = 1 / b = 2

int a = ++b 자기자신 1 증가 → a에 대입 ⇒ a= 2 / b= 2

int a = b-- b를 a에 대입 → 자기자신 1 감소 ⇒ a= 1 / b= 0

int a = --b 자기자신 1 감소 → a에 대입 ⇒ a= 0 / b= 0

삼항연산자

int a = ( 1≤ 2 ) ? 3 : 5 ;

조건이 참이면 3 출력 / 거짓이면 5 출력 ⇒ 3 출력.

And '&' / OR '|'

& 전부 true여야 true 출력

&& 만약 앞이 false 이면 계산을 하지도 않는다. (코드 아래 노란줄은 실행되지 않는 코드라는 뜻)

| 하나라도 true이면 true 출력

|| 만약 앞이 true이면 뒤는 계산해보지도 않는다

int i = Integer.parseInt(args[])

String 인자를 입력받으면 정수형으로 변경해주기 위하여 사용하는 명령어

break; / continue;

break;

break 를 만나면 false로 반복문 탈출

int i =0;
int sum=0;   //더한 값을 저장하기 위한 변수 선언

		while(true){
			i++;
			sum = sum+i;

			if(i==inputData){
				break;             //조건문이  true이므로 break 실행 => 탈출
			}
		}
System.out.println(sum);

continue;

조건문에 부합하면 (true이면) continue를 만나서 조건문으로 (상위로) 다시 올라감

조건문에 부합하지 않으면 반복문 탈출한다.

<짝수만 더하는 코드>

int sum = 0;
for (int i = 0;i<=inputData ;i++ ) {
			
			if(i%2==1){ //홀수이면 더하지 않아야한다.
			continue;
			}
			sum=sum+i;
}

 

반복문 while

변수의 초기화 + 조건문 + 증감식 ⇒ 세가지가 존재해야 while문이 가능하다 !

int i = 0;		     //1. 순환문의 조건을 주기위한 int i 초기화
while(i<10) { 	   //2. 조건(boolean data type)
//while(0)  { 	    ==> compile error 확인 조건문이 아니므로 에러난다
		System.out.println("여기는 while문 내부안임 i=" +i);
i++;                // i의 초기화
}

반복문 for

for문은 while문과 다르게 초기화를 for문 내부에서 한다.

for (초기값; 조건; 변화값;) {
}

-------------------------------------------------------
int j = 5;
			System.out.println(j+" 단을 출력합니다.");

			for (int i =1;i<10 ;i++) {	
					System.out.println(j+" * "+i+" = "+j*i);
			}

배열

Array ⇒ 같은 Data Type의 묶음

데이터가 많을 수록 관리가 힘들다 ⇒ Array 사용 이유

Reference 가 매우 중요하다. 참조형

primitive 기본형

int i = 10; ⇒ i를 declaration선언, 10이라는 정수를 대입

reference 참조형

int [] a = new int [3];

(1)a라는 정수 배열을 선언

(2)배열의 크기는 3개라고 선언

(3)3개의 크기는 a라는 하나의 공간에 못들어감 >> 크기 3의 배열의 주소값만 a에 참조해주는 것

(4)값을 넣어주는 초기화가 필요 ex) a[0]=1, a[1]=2 …

call by reference

하나의 배열을 여러개가 참조하는데

하나의 참조자가 배열 내용을 변경하면 참조자 모두 변경 값을 출력하게 된다.

int [] a = new int [3];
a[0] = 1;
a[1] = 2;
a[2] = 3;

int [] b = a;     =>b = {1,2,3}
b[0] = 10;

=> a[0] 또한 10으로 값이 변경된다.

int [] intArray = new int[9];

배열에 값을 대입하기

public class pp{
	public static void main(String[] args) 	{

		int[] iarray = new int[10];

		for (int i=0;i<iarray.length;i++){
			iarray[i] = i+1;
			System.out.println(iarray[i]);
		}
	}
}

이중 배열

int [][] a = new [2][3];

⇒ a에 정수 2중 배열 선언 ,크기가 2와 3인 배열 선언

          ㅁ(z)    ⇒ a

        ㅁ(x)ㅁ(y) ⇒ 크기 2의 배열
      
      ㅁㅁㅁ(x) ㅁㅁㅁ(y) ⇒ 크기 3의 배열

 

⇒ 총 크기는 6이다. (2x3)

⇒ a.length = 2 / a[1].length = 3 / a[2].length = 3