Sparta/What I Learned

22.11.7

코딩하는 또롱이 2022. 11. 7. 09:51

1.자바 언어 체계
 👉 Camel Case : 낙타의 봉우리처럼 첫 글자는 무조건 소문자로 쓰고 이어지는 단어의 첫 글자는 대문자로 표기
      👉ex) helloJava

더보기

 👉 Kebab Case : 단어 사이에 바'-'로 표기
      👉ex) hello-java

 👉 Snake Case : 단어 사이에 언더바'_ 로 표기
      👉ex) hello_java

 👉 Pascal Case : 단어 첫 글자는 대문자로 표기
      👉ex) HelloJava

2. 자바 기초 문법

 👉 public class를 선언할 때 파일명과 동일해야 컴파일 되서 함수값을 불러올 수 있다.

public class main {
    public static void main(String[] args) {
        // write your code here
        
        int num = 5; //정수형 변수 선언
        System.out.println(num);

        String sparta = "Hello Sparta!"; // 문자형 변수 선언
        System.out.println(sparta);

        sparta = "Goodbye Sparta"; // 이미 선언된 변수에 다른 값을 할당
        System.out.println(sparta);

        final int num2 = 10; // 상수형 변수 선언 (final로 선언 가능)
        System.out.println(num2);
        num2 = 50; // final은 재정의가 불가능
    }
}

3. 자바 자료형(숫자)

public class main {
    public static void main(String[] args) {
        // write your code here
        
        short s = 1;
        System.out.println(a);

        int a = 3; // (4byte) 정수형 변수 선언
        System.out.println(a);

        long b = 1234567890L; // (8byte) Long 정수형 변수 선언
        System.out.println(b);

        float c = 5.5F; // float 실수형 변수 선언
        System.out.println(c);

        double d = 9.12345678901234567890d; // double 실수형 변수 선언
        System.out.println(d);

        // 다음처럼 각 자료형의 MAX, MIN 값을 가져올 수 있습니다.
        System.out.println(Short.MAX_VALUE);
        System.out.println(Short.MIN_VALUE);
        System.out.println(Integer.MAX_VALUE);
        System.out.println(Integer.MIN_VALUE);
        System.out.println(Long.MAX_VALUE);
        System.out.println(Long.MIN_VALUE);
        System.out.println(Float.MAX_VALUE);
        System.out.println(Float.MIN_VALUE);
        System.out.println(Double.MAX_VALUE);
        System.out.println(Double.MIN_VALUE);
    }
}

4. 자바 자료형(문자)

public class main {
    public static void main(String[] args) {
        // write your code here

        //character의 약자, 문자 딱 하나만 담을수 있음. 'AB' 안된다.
        char a = 'A';
        System.out.println(a);

        boolean b = true;
        b = false;
        System.out.println(b);
        
        byte c = 'd';
        System.out.println(c);
        //아스키 코드로 출력
    }
}

5. 자료형 (참조 자료형)

 👉자바에서 참조 자료형은 기본 자료형이 아닌 모든 것을 참조 자료형이라고 한다. 더 정확히는 참조 자료형이란 자바의 인스턴스를 가리킬 수 있는 자료형이고 이 외에도 열거, 인터페이스 타입이 있다.

 👉배열을 입력할 때는 상단에 import 해줘야 한다.

import java.util.Arrays;

public class main {
    public static void main(String[] args) {
        // write your code here

        int[] intEmptyArray = new int[5]; // 초기화를 해주지 않으면 default 값이 0이기 때문에 결과값처럼 0만 나온다.
        System.out.println(Arrays.toString(intEmptyArray));

        int[] intArray = new int[] {1,2,3,4,5};
        System.out.println(Arrays.toString(intArray));

        String[] stringEmptyArray = new String[5]; // 초기화를 해주지 않으면 default 값이 null이기 때문에 결과값처럼 null만 나온다.
        System.out.println(Arrays.toString(stringEmptyArray));

        String[] months = {"1wall","2wall","3wall","4wall","5wall","6wall","7wall","8wall","9wall","10wall","11wall","12wall"};
        System.out.println(Arrays.toString(months));
    }
}

6.

 👉어떻게 하느냐에 따라 도출 값이 달라짐

import java.util.Arrays;

public class main {
    public static void main(String[] args) {
        // write your code here

        char s = 'S';
        System.out.println('s');
        int i = 10;
        System.out.println(i);

        System.out.println(s + i); // s가 아스키코드로 변환되어서 i값이랑 더해짐
        System.out.println(s + "" + i); // 이렇게 공백을 넣어주면 S값이 제대로 나온다.
        System.out.println(s + "\n" + i); // \n이 개행을 의미, 한줄 띄워서 i값이 출력된다.
    }
}

 👉배열의 마지막 값을 도출해 내는 2가지 방법

import java.util.Arrays;

public class main {
    public static void main(String[] args) {
        // write your code here

        int[] arr1 = new int[] {10, 20, 30};
        System.out.println(arr1[2]);
        System.out.println(arr1[arr1.length -1]); // 개발자스러운 방법ㅋㅋㅋㅋㅋㅋ
    }
}

7. 연산자들

산술 연산자

public class main {
    public static void main(String[] args) {
        // write your code here

        int num1 = 5;
        int num2 = 10;
        System.out.println(num1 + num2); 
        System.out.println(num1 - num2);
        System.out.println(num1 * num2);
        System.out.println(num1 / num2); // 나누기
        System.out.println(num1 % num2); // 나머지값
    }
}

 👉 대입 연산자

public class main {
    public static void main(String[] args) {
        // write your code here

        int num1 = 10;
        int num2 = 5;

        num1 += num2; // num1 = num1 + num2
        System.out.println(num1);

        num1 -= num2; // num1 = num1 - num2
        System.out.println(num1);

        num1 *= num2; // num1 = num1 * num2
        System.out.println(num1);

        num1 /= num2; // num1 = num1 / num2
        System.out.println(num1);

        num1 %= num2; // num1 = num1 % num2 
        System.out.println(num1);
    }
}
더보기
결과값

 👉 관계 연산자 :  값이 옳으면 true, 틀리면 false로 나타난다.

public class main {
    public static void main(String[] args) {
        // write your code here

        int num1 = 10;
        int num2 = 20;
        int num3 = 10;

        System.out.println(num1 > num2); // 10 > 20
        System.out.println(num1 >= num3); // 10 >= 10
        System.out.println(num1 < num2); // 10 < 20
        System.out.println(num1 <= num2); // 10 <= 20
        System.out.println(num1 == num3); // 10 == 10 // 똑같은 값인지
        System.out.println(num1 != num2); // 10 != 20 // 다른 값인지
    }
}

 👉 논리 연산자

public class main {
    public static void main(String[] args) {
        // write your code here

        boolean a = true;
        boolean b = false;

        System.out.println(a && b);
        // &&는 두가지 모두 참일 경우에는 true를, 그렇지 않을 경우에는 false를 반환합니다.
        System.out.println(a || b);
        // ||는 두가지 모두 거짓일 경우에는 false를, 그렇지 않을 경우에는 true를 반환합니다.
        System.out.println(!b);
        // !는 피연산자의 논리값을 바꿉니다. true는 false로 , false는 true로 반환합니다.
    }
}

👉 비트 연산자

비트 연산자는 피연산자를 비트단위로 논리 연산하는 것인데, 이번 강의에선 그냥 언급만 하고 넘어가셨음.

 

8.

👉 if 조건문

public class main {
    public static void main(String[] args) {
        // write your code here

        int check = 100;
        int num1 = 150;
        int num2 = 51;

        if (num1 > check) {
            System.out.println("Larger than 100");
        }else if (check > num1){
            System.out.println("Smaller than 100");
        }

        if(num2 > check) {
            System.out.println("Larger than 100");
        } else if (num2 > 50) {
            System.out.println("Smaller than 50");
        }
    }
}

👉 switch 조건문

public class main {
    public static void main(String[] args) {
        // write your code here

        char score = 'A';
            switch (score){
                case 'A':
                    System.out.println("Your score is A grade! Congratulation!!");
                    break; // 내가 찾고싶은 정확한 조건에 도달하면 조건식을 빠져나와주게끔 해주는 명령어. 없으면 모든 조건을 전부 수헹한다.
                case 'B':
                    System.out.println("Your score is B grade!");
                case 'C':
                    System.out.println("Your score is C grade!");
                default:
                    System.out.println("Your score is F grade!");

        }
    }
}

 

👉 삼항 연산자 : '?'를 기준으로 조건식이 true일 경우에는 왼쪽 코드를, false일 경우에는 오쪽 코드를 수행한다. 처음 배우는 연산자!

public class main {
    public static void main(String[] args) {
        // write your code here

        int a = 5;
        String result1 = (a<10) ? "Smaller than 10" : "Larger than 10";
        System.out.println(result1);

        int b = 11;
        String result2 = (b<10) ? "Smaller than 10" : "Larger than 10";
        System.out.println(result2);
    }
}

👉 👉  util 쉽게 추가하려면 빨갛게 뜬 글씨에 커서를 옮겨 놓고 Alt+Enter 하면 추천 메뉴가 뜨고 원하는 것을 클릭하 삽입된다.

 

조건문 퀴즈

 입력받은 값으로 등급이 출력되게 하기 

👉 나는 if로 만들었는데 switch로도 한 번 만들어 보고 추가하기!

더보기
import java.util.Scanner;

public class main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int score = sc.nextInt();

        if (score <= 100 && score > 90) {
            System.out.println("A grade");
        } else if (score <= 90 && score > 80) {
            System.out.println("B grade");
        } else if (score <= 80 && score > 70) {
            System.out.println("C grade");
        } else if (score <= 70 && score > 60) {
            System.out.println("D grade");
        } else {
            System.out.println("F grade");
        }
    }

}

9.

👉 for 반복문

public class main {
    public static void main(String[] args) {
        // write your code here\

        // 1~10의 누적 합
        int sum=0;
        for(int i=0; i<10; i++) {
            sum += (i+1);
        }
        System.out.println(sum);
    }
}

👉 for-each 반복문 : for-each문은 배열의 값들을 하나하나 변수에 담아서 출력한다. 내가 어려워하는 반복문

public class main {
    public static void main(String[] args) {
        // write your code here

        String[] days = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};

        // 요일이 차례대로 출력된다.
        for (String day : days) {
            System.out.println(day);
        }
    }
}

👉 while 반복문 : 조건을 확인하고 명령 수행

public class main {
    public static void main(String[] args) {
        // write your code here

        int i1 = 0;
        int i2 = 0;
        int sum1 = 0;
        int sum2 = 0;

        // i값이 5일 때 끝내기
        while (i1 < 10){
            sum1 += (i1+1);
            i1++;
            if (i1 == 5){
                break;
            }

        }
        System.out.println(sum1);

        // 1~10까지 더하는데, 5만 빼고 더하기
        while (i2 < 10){

            //i가 4일 때 if 밑의 구문을 한 번 뛰어 넘는다는 뜻
            if (i2 == 4){
                i2++; // 이 명령어가 없으면 i는 값이 계속 4인 값이어서 무한루프
                continue;
            }
            
            sum2 += (i2+1);
            i2++;

        }
        System.out.println(sum2);

    }
}
더보기
정답

👉 do-while 반복문 : 냅다 수행부터 하고 봄. do를 수행하여 while의 조건과 일치하면 계속 do 반복, while 조건과 불일치하면 반복문 빠져나와서 결과값 도

public class main {
    public static void main(String[] args) {
        // write your code here

        int i =0 ;
        int sum = 0;

        do {
            sum += (i+1);
            i++;
        } while (i < 10);
        System.out.println(sum);

    }
}

더보기

오늘부터 한 달간 파이썬으로 자료구조 알고리즘이랑 자바에 대해 배운다고 한다 얏호!😎

코테 말만 많이 들었었는데 드디어 나도 코테를 칠 수 있게 문법을 들어가게 됐다. 목표는 매니저님이 말씀하셨던 레벨 2는 정말 정복하고 레벨 3 입문하는 수준까지!!!

할 게 많고 목표가 생기니 진짜 신난다. 엄청 힘들고 안 돼서 짜증 나고 우울해질 때도 있겠지만 그래도 이겨내서 정복하면 그 맛이 그리 짜릿해~😋

 

그리고 커리큘럼 엄청 탄탄하고, 타이트하다고 하셨는데 타이트하면 오히려 좋아 승부욕 생겨🙃

 

이거 다 들어야함 너무 좋아 너무 신나 새로운거야 헠헠

 

한 달 뒤 자바 문법을 다 배우고 나서 성취도 평가를 하고 선, 후발대로 나뉜다고 한다. 후발대로 가서 더 좋은 기본기를 배울 수도 있지만, 그래도 선발대로 뽑혀서 더 많은 지식들을 튜터님들과 매니저님들께 가르침을 많이 받고 수료하고 싶다.

'Sparta > What I Learned' 카테고리의 다른 글

22.11.9  (2) 2022.11.09
22.11.8  (0) 2022.11.08
22.11.6  (0) 2022.11.07
22.11.4  (0) 2022.11.04
22.11.3  (0) 2022.11.03