*변수(variable)-범위, 출력(print), 입력(Scanner)
-변수 사용 범위
-콘솔로 변수값 출력 : print(), println(), printf()
-키보드 입력 데이터 변수에 저장 : Scanner
*변수 사용 범위
-중괄호 블록 {} 내에 선언된 변수는 중괄호 블록 내에서만 사용 가능
-메소드 블록 전체에서 사용하고 싶다면 블록 첫 머리에 선언
public class VariableScopeEx {
public static void main(String[] args) {
/* 변수의 범위 */
//메소드 블록 전체 사용할 수 있는 변수 선언
int v1 = 15;
//특정 블록 내부(if문) 에서만 사용할 수 있는 변수 선언
if(v1>10) {
//변수 v1은 메소드 전체에서 사용할 수 있
int v2 = v1 - 10;
}
//변수 v2는 if문 안에서만 사용할 수 있으므로
//컴파일 에러 발생...
//int v3 = v1 + v2 + 5;
}
}
*콘솔로 변수값 출력 : print(), println(), printf()
-표준 출력 장치인 모니터(명령 프롬프트, 터미널, 콘솔)에 값 출력
-System.out.메소드;
메소드 | 의미 |
print(출력내용); | 괄호 안 내용 출력 |
println(출력내용); | 괄호 한 내용 출력 후 행 바꿈 |
printf("형식문자열", 값1, 값2, …); | 형식 문자열에 맞춰 뒤의 값 출력 |
-printf()의 형식 문자열
-형식 문자열에서 %와 변환 문자는 필수 작성
-% : 형식 문자열의 시작
-변환 문자 : 제공되는 값에 따라 d(정수), f(실수), s(문자열)
//printf(형식, 값)사용하기
System.out.printf("이름: %s", "홍길동");
System.out.printf("나이: %d", 25);
*출력결과
이름: 홍길동
나이: 25
-값의 순번(argument_index$) : 형식 문자열 값이 두개 이상일 경우 값의 순번을 매길 수 있음, %뒤에 붙으며 순번$ 의 형식으로 적용(ex. %1$s, %2$d)
-flags : 빈 공간을 채우는 방법, 생략되면 왼쪽이 공백으로 채워지고 -가 오면 오른쪽이 공백이 됨
-width : 소수점을 포함한 전체 자릿수
-.precision : 소수 이하 자릿수 설정, 실수일 경우 반올림(값이 3.129를 %.2f의 형식 적용 -> 3.13)
*키보드 입력 데이터 변수에 저장 : Scanner
-키보드로부터 입력된 데이터를 읽는 방법 중 주로 사용하는 방법
-키보드로부터 입력된 데이터를 읽고 변수에 저장할 수 있음
-Scanner타입 변수 선언 한 뒤 대입연산자(=)사용 후, new연산자로 생성한 Scanner객체 변수에 대입
-.nextLine() 실행 시 키보드로 입력된 값을 문자열로 읽어올 수 있음
//Scanner사용
//스캐너 객체를 생성하여 변수에 대입
Scanner scanner = new Scanner(System.in);
//변수 scanner에 .nextLine()실행
//키보드로 입력된 내용을 문자열로 읽어올 수 있음
//읽어온 값 String타입 변수에 저장
String inputData = scanner.nextLine();
-scanner.nextLine()은 키보드로 입력하고 난 뒤 Enter키가 입력되기 전까지 블로킹(대기)상태였다가 Enter키 입력 시 입력된 내용 모두 문자열로 읽어옴
이 포스팅에 작성한 내용은 신용권, 임경균, ⌜이것이 자바다⌟, 한빛미디어(주), 2022 에서 발췌하였습니다.
'Android App > Java' 카테고리의 다른 글
오버플로우와 언더플로우 (0) | 2023.01.18 |
---|---|
부호(+, -), 증감(++, --), 산술 연산자(+, -, *, /, %) (0) | 2023.01.18 |
타입 변환-자동, 강제, 연산식, 문자열 (1) | 2023.01.14 |
타입-정수, 실수, 논리, 문자열 (0) | 2023.01.13 |
변수(variable) (1) | 2023.01.13 |