ctrl+D 한 줄 삭제
ctrl+alt+down 행 단위 복사
alt+shift+A 멀티 컬럼 편집
alt+up, down 행단위 이동
ctrl+i 자동 들여쓰기
ctrl+space 자동완성
byte : 1Byte
short : 2Byte
int : 4Byte
long : 8Byte
float : 4Byte
double : 8Byte
char : 2Byte
boolean : 1Byte
final 키워드를 변수명 앞에 적어서 상수값 생성
한번 초기화 한 상수는 변경 불가final double pi=3.14;
상수와 같은 개념, 그 자체로 값을 의미하는 것
int a = 35; char c = 'S'; // 35와 'S'문자열은 리터럴
리터럴의 접미사
정수형 중 Long 타입만 접미사로 L을 씀
100L, 348484848L.. long aa = 10_000_000_000L; // 20억이 넘어가는 숫자는 int범위가 넘어가기 때문에 L접미사를 이용하여 long타입으로 바꿔야 함 //L 제거시 오류
실수형의 경우 float는 f, double은 d (d는 생략가능)
3.14f, 1.4f ... float x = 3.14f; // 가능 double y = 3.14d; // 가능, d생략 가능 float z = 3.14; // 불가, 접미사를 생략하면 double형의 변수타입이 되기 때문에 변수타입이 일치하지 않음
문자열은 단일 문자열의 경우'', 긴 문자열은 ""을 사용
char a = 'C'; String str1 = "ABCDEFG";
byte변수의 경우 overflow 위험 있음
byte t = 127; // 가능 byte b = 128; // 오류, 127이나 128은 모두 int형이기 때문에 byte의 변수범위 -128~127 을 넘기 때문에 overflow // byte b 대신 int나 short 변수형 사용
리터럴의 불일치
int i = 'A'; // int > char 타입이기 때문에 대입가능, i값은 65 long j = 3.14f // long(8Byte) < float(4Byte) float타입이 실수형 변수이기 때문에 정수형 변수보다 더 많은 값을 저장할 수 있음, 오류
단일 문자열 = char
연속 문자열, 빈 문자열 등 = Stringchar a = ''; // 오류, char 변수는 공백X char b = 'SDFSD'; // 오류, 단일문자만 허용 String str1 = ""; // 가능 String str2 = "sas"; // 가능
문자열의 결합
String str1 = ""; String str2 = "magic"; String str3 = "dd"; System.out.println(str1+str2+str3); // = magicdd
String str1 = ""; String str2 = "76"; String str3 = "11"; System.out.println(str1+str2+str3); // = 7611 System.out.println(str2+str3+str1); // = 87
String str1 = "my";
if (str1.equals("my")) // str1의 값이 "my"값과 같으면 true 반환
str1 == "my" // 잘못된 문법
String str2 = null; // String 변수는 null값을 가질 수 있음
if (str2 == null) // 비교 가능
int length = str1.length();
Scanner sc = new Scanner(System.in); // Scanner 생성 String str3 = sc.nextLine(); // nextLine()은 한 줄을 입력받음 String str4 = sc.next(); // 공백으로 구분 된 단어 한개만 읽기 int i = sc.nextInt(); // 정수 입력시 nextInt()메소드 사용
출력 시 println은 줄바꿈하여 출력, print는 줄바꿈 없이 출력
printf는 출력 지시자를 이용하여 출력형식 지정가능System.out.printf("%s", str3); // 문자열 출력 System.out.printf("%d", i); // 정수 출력 System.out.printf("%8.3f", i); // 필드폭 8, 소수점아래 3자리까지 출력