Java 강의 #1 변수/자료형/배열/연산자/조건문/반복문

김춘복·2023년 2월 8일
0

Java 공부

목록 보기
1/20
post-thumbnail

가장 많이 쓰이는 Intelli J 단축키 15

시작

자바는 항상 main함수부터 실행

public class Main {
    public static void main(String[] args) {
	// write your code here
        System.out.println("Hello Wolrd");
    }
}

println 의 경우 출력 이후, 줄바꿈(Enter)을 한다는 의미
System.out.println("")은 다 칠 필요없이 sout 치면 된다.

변수

변수 : 어떠한 데이터를 저장하기 위한 메모리 공간의 이름. 지속적으로 값 변경 가능.
상수 : 값이 고정됨. 선언 시 앞에 final 붙임.
변수 선언 시 [접근제어자][변수의 자료형] [변수의 이름] = [값] 의 방법으로 선언과 함께 초기화.
Java는 변수 이름에 camelCase 사용. 첫글자소문자. 그 뒤 단어단위마다 첫글자만 대문자.
ex) finalNumberSecond < 이런식으로. 맨첫자에는 숫자나 특수문자 x

자료형(Data type)

자료형 (기본:숫자 문자 논리 바이트, 참조)

  • 정수형
    byte : 정수형 1바이트(8bit) 2^8개 -128~127 (숫자저장으로는 잘 x)
    short : 정수형 2바이트(16bit) 2^16개 -32768~32767
    int : 정수형 4바이트(32bit) 2^32개 약 -20억~20억 기본적으로 많이 씀
    long : 정수형 8바이트(64bit) 2^64개 약-900경~900경

  • 실수형(소수)
    float 변수명 = 3.6F; : 소수 뒤에 대문자 F 붙여야.
    double 변수명 = 5.6 : 이건 대문자 안붙여도 됨. 기본적으로 많이 씀

  • 문자형
    char 변수명 = ‘D’: 작은따옴표안에 글자 하나. 캐릭터.

  • 논리형
    boolean : true false만 저장 가능.

  • Byte는 특수하게 문자 저장하면 아스키코드로 뱉어냄.

  • 참조자료형 : 기본자료형이 아닌 모든 자료형. 인스턴스(객체)를 가르칠 수 있는 자료형
    Ctrl+클릭해보면 class로 뜨는건 참조자료형.

String 변수명 = "글자들";
int[] intArray = new int[] {1, 2, 3, 4, 5}; // int 배열을 선언과 동시에 초기화
// int 여러 개 담을 수 있는 배열(array). [대괄호]가 배열. 
String[] season = {"봄", "여름", "가을", "겨울"} // String배열 선언과 동시에 초기화
  • void : return이 되는 타입이 없을 때 쓴다.

배열

  • 배열(array) : 동일한 자료형의 데이터를 연속된 공간에 저장하기 위한 자료구조.
    자료형[] 변수 = new 자료형[배열의크기] 로 선언. 배열은 선언과 동시에 고정된 크기를 가짐.
    Sout 할 때 변수이름에 노란색 뜨면 alt+엔터 누르고 엔터 한번더.
    Index : 배열에서 몇번째 순서. 왼쪽부터 0부터 시작.
    .length : 배열의 크기. Sout(seasons[seasons.length - 1])하면 마지막 배열값 출력.
char a = 'S';
int b = 10;
System.out.println(a + b); // 93. S가 아스키코드 83으로 인식
System.out.println(a + "" + b); // S10
System.out.println(a + "\n" + b);//밑에처럼 출력. \n 백슬래시n이 행을 바꾼다는 의미.
S
10

연산자

  • 산술연산자 : + - * / %(나머지)

  • 대입연산자

  • 비교연산자 : == != > < >= <=

  • 논리연산자
    a && b : and. A도 참 b도 참일 때 참.
    a || b : or. A나 b가 참이면 참.
    !a : not. 참이면 거짓 거짓이면 참. 반대로.

  • 비트연산자

조건문 if switch

  • if / else if / else
if (조건식1){
    조건식 true일 시 실행 코드
} else if (조건식2) {
	조건식1 false이고 조건식 2true일 시 실행코드
    } else {
    조건식1,2false일 시 실행코드
    }
  • switch / case / default : 정확히 어떤 케이스냐 판단할 때. default는 모든 케이스가 아닐 때
    해당 케이스가 맞으면 break;에서 깨고 나간다. break; 없으면 아래 case도 실행.
switch (입력 변수){
    case 입력값1 : 실행 구문
        break;
    case 입력값2 : 실행 구문
        break;
    case 입력값3 : 실행 구문
        break;
    default: 기본 실행 구문
        break;
}
  • 삼항연산자
    (조건식) ? A : B // ?를 기준으로 조건식이 true면 A, false면 B코드를 실행.
    ()는 없어도 됨.
int a = 500;
String reuslt = (a < 100) ? "100보다 작습니다." : "100보다 큽니다.";
System.out.println(reuslt); // (조건식)이 false므로 100보다 큽니다. 출력

반복문

  • for문
for(초기값 ; 조건식 ; 증감식){
    실행 코드 블럭
}
  • for-each문 : for(자료형 변수: 리스트변수명)
        String[] days = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};
for (String day : days) {
    System.out.println(day);
}
//monday~sunday까지 다 출력
  • while : 조건식이 true인 한 실행코드를 계속 실행. ;로 구분해서 여러 코드 입력 가능.
    무한루프에 빠질 수 있으니 조건식이 false인 조건 신경써서 넣어야
    아니면 if (조건) {break;}로 루프 빠져나올수 있게 한다.
    continue;는 아래의 코드 실행하지 않고 반복문 시작으로 돌아가는것(skip)
while(조건식){
    실행 코드 블럭
}
  • do-while : while문은 조건식에 부합할 경우 코드 블럭을 실행하지만, do-while문은 일단 코드 블럭을 무조건 한번 실행한 후, while문의 조건을 비교.
    결과와 상관없이 일단 코드(루프)는 한번 실행.
do {
    실행 코드 블럭;
} while (조건식);
profile
Backend Dev / Data Engineer

0개의 댓글