출력 명령 | 내용 |
---|---|
Systme.out.print(); | 인수를 문자열로 콘솔 출력 |
Systme.out.println(); | 인수를 문자열로 콘솔 출력 + 개행(줄바꿈) |
Systme.out.printf(); | 서식 문자 사용 출력(문자열 포매팅) |
package section18;
public class Ex1801 {
public static void main(String[] args) {
// print(개행 안함)
System.out.print("Java is ");
System.out.print("nice!");
}
}
package section18;
public class Ex1802 {
public static void main(String[] args) {
// print + \\n(개행)
System.out.print("Java is\\n");
System.out.print("nice!");
System.out.println(); // 개행이 포함된 출력
// println(개행)
System.out.println("Java is");
System.out.print("nice!");
}
}
서식 문자 | 출력 형 |
---|---|
%d | 정수(10진수) |
%o | 정수(8진수) |
%x | 정수(16진수) |
%f | 실수 |
%e | 지수 |
%g | %e 또는 %f 형태로 출력 |
%s | 문자열 |
%c | 문자 |
%% | Literal %(문자열로 취급) |
package section18;
public class Ex1803 {
public static void main(String[] args) {
System.out.println(String.format("I eat %d apples.", 5));
System.out.printf("I eat %d apples.\\n", 5);
System.out.printf("I eat %f apples.\\n", 2.5);
System.out.printf("I eat %.2f apples.\\n", 2.5);
System.out.printf("I eat %s apples.\\n", "five");
System.out.printf("I eat %s apples.\\n", 2.5);
System.out.printf("I have completed %d%% of my Java studies.\\n", 100);
System.out.printf("I have completed %d%% of my %s studies.\\n", 100, "Java");
System.out.printf("I have completed %3d%% of my %s studies.\\n", 90, "Java");
System.out.printf("I have completed %-3d%% of my %s studies.\\n", 90, "Java");
System.out.printf("I have completed %.2f%% of my %s studies.\\n", 99.999999, "Java"); // 반올림
}
}
자바는 입출력 스트림 System.in, System.out, System.err 제공. System.in은 콘솔로부터 데이터를 입력 받는데 사용.
Scanner 클래스 메서드
📢 기본적으로 스페이스로 입력 값 구분, nextLine()은 엔터로 입력값 구분하고 스페이스는 문자열로 취급.
자료형 | 메서드 | 설명 |
---|---|---|
정수형 | nextByte() | 입력값 byte형으로 반환 |
nextShort() | 입력값 short형으로 반환 | |
nextInt() | 입력값 int형으로 반환 | |
nextLong() | 입력값 long형으로 반환 | |
실수형 | nextFloat() | 입력값 float형으로 반환 |
nextDouble() | 입력값 double형으로 반환 | |
문자형 | next() | 입력 라인 문자열 반환 |
nextLine() | 입력 라인 전체 문자열 반환(스페이스 포함) |
package section18;
import java.util.Scanner;
public class Ex1804 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("하나의 정수를 입력하세요: ");
int intNum1 = scanner.nextInt();
System.out.println("intNum1 : " + intNum1);
scanner.close();
}
}
package section18;
import java.util.Scanner;
public class Ex1805 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("세개의 정수를 입력하세요(스페이스로 구분): ");
int intNum1 = scanner.nextInt();
int intNum2 = scanner.nextInt();
int intNum3 = scanner.nextInt();
System.out.println("intNum1\\t: " + intNum1);
System.out.println("intNum2\\t: " + intNum2);
System.out.println("intNum3\\t: " + intNum3);
System.out.println("합\\t: " + (intNum1 + intNum2 + intNum3));
scanner.close();
}
}
package section18;
import java.util.Scanner;
public class Ex1806 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("세개의 문자열을 입력하세요(스페이스로 구분): ");
String str1 = scanner.next();
String str2 = scanner.next();
String str3 = scanner.next();
System.out.println("str1\\t: " + str1);
System.out.println("str2\\t: " + str2);
System.out.println("str3\\t: " + str3);
scanner.close();
}
}
package section18;
import java.util.Scanner;
public class Ex1807 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("스페이스를 포함한 문자열을 입력하세요: ");
String strNextLine = scanner.nextLine();
System.out.println("strNextLine\\t: " + strNextLine);
scanner.close();
}
}
package section18;
public class Practice1801 {
public static void main(String[] args) {
int age = 25;
double height = 175.5;
String city = "Busan";
// 아래와 같이 콘솔에 출력되도록 코드를 작성하시오!
// 나이: 25, 키: 175.5, 도시: Busan
System.out.printf("나이: %d, 키: %.1f, 도시: %s\\n", age, height, city);
}
}
package section18;
public class Practice1802 {
public static void main(String[] args) {
int num1 = 123;
int num2 = 567;
// 아래와 같이 출력되도록 코드를 수정하시오!
// 123 567
System.out.printf("%-4d", num1);
System.out.printf("%d", num2);
}
}
package section18;
import java.util.Scanner;
public class Practice1803 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 적절한 Scanner 객체의 메서드를 사용하여 아래와 같이 입력/출력이 되게 하시오!
/*
* 이름을 입력하세요: 김일남
* 나이를 입력하세요: 99
* 키를 입력하세요: 169.9
* 이름: 김일남, 나이: 99, 키: 169.90
*/
System.out.print("이름을 입력하세요: ");
String name;
// name = scanner.nextLine();
System.out.print("나이를 입력하세요: ");
int age;
// age = scanner.nextInt();
System.out.print("키를 입력하세요: ");
double height;
// height = scanner.nextDouble();
// 입력받은 값을 서식 문자로 출력
System.out.printf("이름: %s, 나이: %d, 키: %.2f\\n", name, age, height);
scanner.close();
}
}
ctrl + ,
누르고 java jdt
입력