1. println() 메소드
println 을 사용해 문자열을 출력할 수 있다.
// 변수 생성
int age = 25;
// A - 결과 출력
System.out.println("제 나이는 " + age + "세입니다.");
// 제 나이는 25세 입니다.
2. printf() 메소드
println() 과 printf() 출력 형식 비교
⁕ println();
System.out.println("7/2는 " + result + "입니다.");
⁕ printf();
System.out.printf("7/2는 %d입니다.", result);
2.1 출력 형식
1) int 정수형 변수 삽입 - %d
printf() 메소드는, 출력하고자 하는 변수의 타입 (%d) 을 아래와 같이 명시해줘야 한다.
// 변수 생성
int age = 25;
// A - 결과 출력
System.out.printf("제 나이는 %d세입니다.", age);
// 제 나이는 25세 입니다.
결과는 println 을 사용했을 때와 같이 동일하다. 변수 age의 값이 %d의 위치로 삽입되어 출력된다.
* %d의 의미 - 정수
십진수를 영어로한 decimal의 약어이다. C언어의 문법을 그대로 차용한 것으로 이는 정수를 십진수의 형태로 출력한다.
정수는 %d 외에도 다양한 출력 법이 있다.
-
%d - 10진수 출력
-
%o - 8진수 출력
-
%x - 16진수 출력
2) 여러개의 정수값 출력 - ,
출력하고자 하는값이 여러개인 경우 변수사이에 콤마(,)를 사용해야 한다.
// 변수 생성
int month = 10;
int day = 3;
// 결과 출력
System.out.printf("개천절은 %d월 %d일 입니다.", month, day);
// 개천절은 10월 3일 입니다.
3) double 실수값 출력 - %f
실수형 변수를 출력하고자 할때는 %f를 사용한다.
// 변수 생성
double PI = 3.14;
// 결과 출력
System.out.printf("파이의 값은 %f 입니다.", PI);
// 파이의 값은 3.140000 입니다.
public class StringInterpolation3 {
public static void main (String[] args) {
// 변수 생성
double x = 7.0 / 2.0; // 3.5
double y = 7 / 2; // 3 -> (자동 변환) -> 3.0
// 결과 출력
System.out.printf("x = %f, y = %f", x, y);
}
// 결과: x = 3.500000, y = 3.000000
}
여기서 y = int(7) / int(2) 를 하게되면 int 값인 3이 나오는데, double type 이므로 자동변환 되어 결과는 3.0으로 출력된다.
⁕ 소수점 이하 자릿 수 설정
%f 실수값 출력 시, 소수점 이하 자리수를 다음과 같이 제한할 수 있다.
예시)
소수점 이하 2자리 출력시 : %.2f
소수점 이하 5자리 출력시 : %.5f
3) String 문자열 출력 - %s
// 변수 생성
String name = "Hailey";
String hobby = "baking";
// 결과 출력 => "name : Hailey hobby: baking"
System.out.printf("name : %s\n", name);
System.out.printf("hobby : %s\n", hobby);
줄 내림 - \n
println의 경우에는 자동으로 줄 변경이 되지만, printf의 경우 줄 변경시 "\n" 을 추가해야한다.
Math class
원주율 - Math.PI
절대값 - Math.abs();
반올림 - Math.round();
// 원주율 - Math.PI
double pi = Math.PI; // 3.14159265..
//절대값 - Math.abs();
double x = Math.abs(-9.81); // 9.81
// 반올림 - Math.round();
long n = Math.round(10.6); //11
출력형식과 변수의 타입이 불일치할 경우
public class Casting {
public static void main(String[] args) {
//변수 생성
double pi = 3.14;
// Error : 출력형식(%d)과 변수의 타입(double)이 불일치
System.out.printf("%d", pi)
// 1. 출력 형식을 올바르게 변경
System.out.printf("%f", pi);
// 2. 출력 변수의 타입을 강제변환(캐스팅)
System.out.printf("%d", (int) pi);
}
}
위 예시는 double 형 변수를 %d 인 정수형으로 출력하라고 선언되어있어 에러가 발생한 경우다.
이 상황에서 두가지 해결방법이 있다.
1. 출력형식을 %d 에서 %f 로 변경한다.
2. 출력 변수의 타입인 double을 int로 강제 변환(Casting) 한다.
형변환 - 문자열을 숫자로 변환
public class StringToNumber {
public static void main(String[] args) {
//변수 생성
String four = "4";
String eight = "8";
String six = "6";
// 형변환 : 문자열 -> 숫자
int a = Integer.parseInt(four);
int b = Integer.parseInt(eight);
int c = Integer.parseInt(six);
// 결과 출력
System.out.println("total : " + four + eight + six); //total : 486
System.out.println("total : " + a + b + c); //total : 18
}
}
문자 "4"와 숫자 4는 연산을 함에 있어 큰 차이가 있다. 위 예시와 같이 문자 4, 8, 6을 더하게 되면 486이 되지만
결과값으로 세 값을 더한 18을 얻기위해서는 int 즉 정수형태로 변경해야한다. 이때 Integer.parseInt(); 를 사용하면 숫자로 변환된 것을 볼 수 있다.
'BackEnd > Java' 카테고리의 다른 글
실수 타입 - Double (0) | 2020.12.24 |
---|---|
Java 프로그래밍 기초 - Scanner 스캐너 클래스 (0) | 2020.12.23 |
JDK 프로그램 설치 매뉴얼 (0) | 2020.12.22 |
[Java] Comment 주석 처리 (0) | 2020.12.16 |
[Java] 프로그램이란, Java의 기초 개념 (0) | 2020.12.14 |