본문 바로가기
개발 수업/JAVA

[Java] 변수와 타입/타입 변환

by 오늘 하루s 2023. 5. 2.
728x90
더보기

Day4. 230502 

타입 변환

+연산에서의 문자열 자동 타입 변환

피연산자가 모두 숫자일 경우 덧셈 연산 수행.

피연산자 중 하나가 문자열일 경우 나머지 피연산자도 문자열로 자동 변환

숫자+숫자 → 덧셈 연산 → 숫자
"문자열"+숫자 → "문자열"+"숫자" → 결합연산 → "문자열숫자"
숫자+"문자열" → "숫자"+"문자열" → 결합연산 → "숫자문자열"

 

 

문자열을 기본 타입으로 강제 타입 변환

문자열을 기본타입(byte, short, int, long, float, double)으로 강제형변환

변환 타입 사용 예
Sting→byte String str = "10";
byte v = Byte.perseByte(str);
String→short String str = "10";
short v = Short.perseShort(str);
String→int String str = "10";
int v = Integer.perseInt(str);
String→long String str = "10";
long v = Long.perseLong(str);
String→float String str = "10.0";
float v = Float.perseFloat(str);
String→double String str = "10.0";
double v = Double.perseDouble(str);
String→boolean String str = "true";
boolean v = Boolean.perseBoolean(str);

 

 

모니터로 변수값 출력하기

메소드 의미
println(내용); 괄호 안의 내용을 출력하고 행을 바꿔라
print(내용); 괄호 안의 내용을 출력만 해라
printf("형식문자열",값1,값2,...) 괄호 안의 첫 번째 문자열 형식대로 내용을 출력해라

 

자주 사용되는 형식 문자열
형식화된 문자열 설명 출력 형태
정수 %d
%6d
%-6d
%06d
정수
6자리 정수, 왼쪽 빈 자리 공백
6자리 정수,오른쪽 빈 자리 공백
6자리 정수,왼쪽 빈 자리 0채움
123
_ _ _123
123_ _ _
000123
실수 %10.2f
%-10.2f
%010.2f
소수점 이상 7자리,소수점 이하 2자리, 왼쪽 빈 자리 공백
소수점 이상 7자리,소수점 이하 2자리, 오른쪽 빈 자리 공백
소수점 이상 7자리, 소수점 이하 2자리, 왼쪽 빈 자리 0채움
_ _ _123.45
123.45_ _ _
0000123.45
문자열 %s
%6s
%-6s
문자열
6자리 문자열, 왼쪽 빈 자리 공백
6자리 문자열, 오른쪽 빈 자리 공백
abc
_ _ _abc
abc_ _ _
특수문자 \t
\n
%%
탭(tab)
줄 바꿈
%


%

 

 

키보드에서 입력된 내용을 변수에 저장하기

int keyCode = System.in.read()
시스템이 가지고 있는 입력장치에서 입력된 키코드를 읽어라.
읽은 키코드를 변수에 저장.

 

아스키코드표

 

더보기

* 실행결과

a

KeyCode : 97

KeyCode : 13

KeyCode : 10

 

- 캐리지리턴(Carriage Return)
예전 타자기시절 종이를 오른쪽 끝으로 보내주던 작업

=> 인쇄 위치 또는 커서 표시 위치를 같은 줄(행) 맨 앞의 위치로 복귀시키는 것. 아스키(ASCII) 문자 코드의 ‘13’에 해당

 

- 라인피드(Line Feed)  
예전 타자기시절 한 줄을 다 채우면 다음 줄을 사용하기 위해 종이를 위로 올리던 작업

 

 

더보기

* 실행결과

a

KeyCode : 97

KeyCode : 13

KeyCode : 10

6

KeyCode : 54

KeyCode : 13

KeyCode : 10

q

113
if문-안
while문-밖

 

Scanner 클래스

System.in.read()의 단점은

키코드를 하나씩 읽기 때문에 2개 이상의 키가 조합된 한글 읽을 수 없음.

/키보드로부터 입력된 내용을 통 문자열로 읽지 못함.

=> 자바 Scanner클래스 제공.

Scanner scanner = new Scannr(System.in);
Scanner 변수 선언 / 시스템의 입력 장치로 부터 읽는 Scanner 생성->생성된 Scanner를 변수에 저장
String inputData = scanner.nextLine();
String 변수 선언 / Enter키 이전까지 입력된 문자열을 읽음->읽은 문자열을 String 변수에 저장.

더보기

* 실행결과

a

입력받은 문자열:a

가나

입력받은 문자열:가나

q
입력받은 문자열:q
if문-안
while문-밖

728x90