java (2)

ysh·2023년 6월 29일
0

Spring Boot

목록 보기
17/53

public 클래스는 여러 개일 수 없다

변수 이름 규칙

  • 대소문자 구분
  • 특수문자는 언더바와 달러(_$)만 가능

변수 이름 권장

  • 클래스 이름은 대문자로 시작
  • 변수와 함수 이름은 소문자로 시작
  • 띄어쓰기 X, 붙여 쓰고 대문자로 표기
String hello world; //(X)
String helloWorld; //(O)
  • 상수의 이름은 모두 대문자, 띄워쓰기는 언더바
static final int THE_2ND_WORLD_WAR = 1939;
  • 영어로 작성
    (유니코드를 인식하지 못하는 OS도 있음)
class 자동차 {}; // 가능하지만 비추천
class car {}; //(O)

정수형의 default는 int,
실수형의 default는 double
-> long, float 등 default가 아닌 자료형을 쓸 때는 뒤에 문자를 붙여야 함

기본형

  • 변수에 값이 저장된다

참조형

  • 변수에 주소가 저장된다

리터럴

  • 특정한 자료형의 값을 직접 표현한 것

형변환

public class S01 {
    public static void main(String[] args) {
        System.out.println(65);
        // 형변환 - 리터럴 앞에 소괄호를 적고 그 안에 타입 입력
        // 명시적 형변환
        System.out.println((char)65);

        // 범위가 적은 데이터 타입에서 큰 타입은 문제 X
        System.out.println((double)65);

        // 큰 타입에서 작은 데이터 타입으로 변환시 데이터 유실 가능성 O 
        System.out.println((int)65.1);        

        // 다른 타입을 계산하게 되면 범위가 큰 타입으로 자동 캐스팅
        // 묵시적 형변환
        System.out.println(3.0 / 2);
        System.out.println(3.0 / (double)2);
        System.out.println(3 / 2.0);
    }    
}

출력 형식 (포맷팅)

package ch02;

public class S02 {
    public static void main(String[] args) {
        String str = "저는 유승한이고, 24세 입니다.";
        String name = "지드래곤";
        int age = 34;

        // 문자열 사이에 변수를 넣을 때 '+' 사용
        String str1 = "저는 " + name + "이고 " + age + "세 입니다";
        System.out.println(str1);
        
        // 형식화된 출력 / 문자열 포맷팅 / 문자열 보간법
        System.out.printf("저는 %s이고 %d세 입니다.\n", "고양이", 2);
        System.out.printf("\"저는 %s이고 %d세 입니다.\"\n", name, age);

        //소수점 단위 제한 가능
        System.out.printf("%.2f\n", 10.0 / 3);
        // 잘린 소수점은 자동 반올림
        System.out.printf("%.2f\n", 3.6666666666);
        
        // 문자열 포맷팅
        String str2 = String.format("저는 %s\n", "홍길동");
        System.out.println(str2);
        
        String str3 = MessageFormat.format("저는 {0} {1} {0}\n", "다나카", 30);
        System.out.println(str3);
    }
}



자바의 정석

https://github.com/castello/javajungsuk_basic/blob/master/javajungsuk_basic_%EC%9A%94%EC%95%BD%EC%A7%91.pdf

profile
유승한

0개의 댓글