Java 기초

P·2021년 10월 26일
0

Eclipse 단축키

ctrl+D 한 줄 삭제
ctrl+alt+down 행 단위 복사
alt+shift+A 멀티 컬럼 편집
alt+up, down 행단위 이동
ctrl+i 자동 들여쓰기
ctrl+space 자동완성

java

변수

정수형

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
연속 문자열, 빈 문자열 등 = String

char 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자리까지 출력
profile
개인 정리 공간

0개의 댓글