soft IT life
23.01.04 - 증감연산자/if문/반복문(for/while)/배열,이중배열/break, continue 본문
증감연산자
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
'JAVA' 카테고리의 다른 글
| 23.01.06 - 상속관계(this(),super()) / Overloading, Overriding (0) | 2023.08.02 |
|---|---|
| 23.01.05 - 객체지향절차/Class란?/Instance란?/Field/Method (1) | 2023.08.01 |
| 23.01.03 - JAVA HOME, Path 설정 (3) | 2023.08.01 |
| 수업 코드 내용 정리 (0) | 2023.08.01 |
| 23.01.02 - System개발절차, Java 특징, 객체지향이란? (0) | 2023.08.01 |