728x90
1. 변수 출력
System.out.println("이 안에 있는 내용이 출력");
(출력 후 엔터가 포함)
System.out.print("이 안에 있는 내용이 출력");
(엔터없이 출력만)
System.out.printf("이 안에 있는 내용이 출력");
(형식을 가지고 출력) format
System.out.printf("내용 %형식 %형식", 값, 값);
// 형식과 값의 갯수가 맞아야 합니다.
// 값에 해당하는 곳은 연산이 가능합니다.
%형식의 종류
%d - 정수형
%f - 실수형
%s - 문자열
%c - 문자하나
%라는 문자 자체를 출력하려면 %%로 표기
%d 출력
· %10d 10자리 공간 확보 출력 + 오른쪽 정렬
· %-10d 10자리 공간을 확보 출력 + 왼쪽 정렬
%f 출력
· %6f 6자리 공간 확보 출력 + 오른쪽 정렬
· %-6f 6자리 공간 확보 출력 + 왼쪽 정렬
· %6.2f 6자리 공간 확보 출력 + 오른쪽 정렬 + 소수점 2번째 자리수까지
출력 예시
int hour = 14;
int minute = 14;
String day = "금요일";
String weather = "맑음";
System.out.printf("오늘 %s 날씨는 %s 현재 %d:%d 입니다.\n", day , weather, hour, minute);
System.out.println("오늘 " + day + " 날씨는 " + weather + " 현재 " + hour + ":" + minute + " 입니다.");
// 오늘 금요일 날씨는 맑음 현재 14 : 14 입니다.
double interest = 2.6;
System.out.printf("오늘 이자는 %f%%입니다.\n", interest);
// %라는 문자 자체를 출력하려면 %%로 표기
System.out.printf("오늘 이자는 %6.1f%%입니다.\n", interest);
System.out.printf("오늘 이자는 %.1f%%입니다.\n", interest);
2. 변수 입력
Scanner
Scanner scan = new Scanner(System.in); // 스캐너 생성
//타입 변수명 = 값;
System.out.print("입력하세요 : ");
String input =scanner.nextLine(); // 콘솔창에서 입력된 값을 읽어오는 기능
//콘솔창에서 입력받아 값이 들어오는데 String 문자열 타입으로 들어온다
System.out.println("입력 완료");
System.out.println(input);
이클립스에서 결과를 확인하려면 상단에 있는 (▶) Run을 눌러 실행하거나 Ctrl+F11을 누르면 됩니다.
숫자 2개 입력 → 출력
Scanner scan = new Scanner(System.in);
System.out.print("첫번째 숫자를 입력하세요 : ");
String input1 = scan.nextLine();
System.out.print("두번째 숫자를 입력하세요 : ");
String input2 = scan.nextLine();
System.out.println("입력한 두 개의 숫자는 " + input1 + " 와 " + input2 + " 입니다.");
System.out.printf("입력한 두 개의 숫자는 %s 와 %s 입니다.\n", input1, input2);
//printf에서는 한줄입력이기 때문에 값을 입력하기전 \n을 입력하면 다음 한줄을 띄워둘 수 있습니다.
문자열 → 숫자
int input1Int = Integer.parseInt(input1);
int input2Int = Integer.parseInt(input2);
System.out.printf("입력한 두 수의 합은 %d + %d = %d 입니다.\n", Integer.parseInt(input1), Integer.parseInt(input2), Integer.parseInt(input1) + Integer.parseInt(input2));
System.out.printf("입력한 두 수의 합은 %s + %s = %d 입니다.\n", input1, input2, Integer.parseInt(input1) + Integer.parseInt(input2));
System.out.printf("입력한 두 수의 합은 %s + %s = %d 입니다.\n", input1, input2, (input1Int + input2Int));
int sum = input1Int+input2Int;
System.out.printf("입력한 두 수의 합은 %s + %s = %d 입니다.\n", input1, input2, sum);
타입별 입력 방식
Scanner scan = new Scanner(System.in); | |
scan.nextLine(); | 입력된 값 → 문자열 String 타입 |
scan.nextInt(); | 입력된 값 → 숫자 int 정수 타입 |
scan.nextDouble(); | 입력된 값 → 숫자 double 실수 타입 |
입력 예시
Scanner scan = new Scanner(System.in);
System.out.print("첫번째 수 입력 : ");
int input1 = scan.nextInt(); // 입력된 값을 Int 타입으로 받아옴
System.out.println(input1);
System.out.print("두번째 수 입력 : ");
int input2 = scan.nextInt();
System.out.println(input2);
System.out.printf("입력된 수의 합 %d+%d=%d 입니다.\n", input1, input2, input1+input2);
//값 부분에서 연산이 가능합니다.
입력 시 숫자와 문자열의 차이점
· String 문자열 타입의 경우, 한줄 한줄을 통으로 인식합니다.
· 숫자 Int, Double 타입의 경우, 숫자를 개별로 인식합니다.
Scanner scan = new Scanner(System.in);
System.out.print("숫자 두 개 입력하세요~ ");
// 10 20 입력
// String s1 = scan.nextLine(); // 문자열 한 줄을 통으로 가져옴 ex) "10 20" 엔터 치면 다음 s2값 입력
// String s2 = scan.nextLine();
// System.out.println(s1 + s2);
int i1 = scan.nextInt(); // 다음에 들어온 숫자가 채워지면 끝 ex) 10 20 엔터 불가
int i2 = scan.nextInt(); //
System.out.println(i1 + " " + i2);