System.out.println();
system = 시스템이 가지고 있는
out = 출력장치로
println( ); = 괄호 안의 내용을 출력하고 행을 바꿔라
println( ) 에서 ln은 line의 줄임말로 행을 바꾸라는 의미이다.
메소드 | 의미 |
println(내용); | 괄호 안의 내용을 출력하고 행을 바꾸시오 |
print(내용); | 괄호 안의 내용을 출력하시오 |
printf("형식문자열", 값1, 값2, ...); | 괄호 안의 첫 번째 문자열 형식대로 내용을 출력하시오 |
형식문자열에서 %와 conversion(변환문자)은 필수로 작성하고 그 외의 항목은 모두 생략 할 수 있다.
%는 형식 문자열의 시작을 뜻하고, conversion에는 제공되는 값의 타입에 따라 d(정수), f(실수), s(문자열)을 입력한다.
system.out.printf("이름 : %s", "아무개"); 이름 : 아무개
system.out.printf("나이 : %d", 25); 나이 : 25
한줄로 쓸 수도 있는데 포함될 값이 2개 이상일 경우에는 값의 순번을 알려주어야 한다.
예를 들면 1$는 첫 번째 값을, 2$는 두 번째 값을 의미한다.
system.out.printf("이름: %1$s, 나이: %2$d", "아무개", 25) 이름 : 아무개 나이 :25
자주 사용되는 문자열을 정리 해보자.
정수 |
%d |
123 |
|
실수 | %10.2f %-10.2f %010.2f |
____123.45 |
|
문자열 | %s %6s %-6s |
abc ___abc abc___ |
|
특수문자 | \t \n %% |
탭(tab) 줄바꿈 % |
Scanner 클래스에 대해서 알아보자.
Scanner sc = new Scanner(System.in)
String str = sc.nextLine();
sc = 변수 선언
new Scanner(System.in); = 시스템의 입력 장치로부터 읽는 Sacnner 생성
String str = String 변수선언
sc.nextLine(); = Enter 키 이전까지 입력된 문자열을 읽음
package com.kh.scan;
import java.util.Scanner;
public class MyScanner {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
System.out.println("int를 입력해주세요 : ");
int i = sc.nextInt();
System.out.println("입력한 값은 : " + i);
System.out.println("float를 입력해주세요 :");
float f = sc.nextFloat();
System.out.println("double을 입력해주세요 : ");
double d = sc.nextDouble();
System.out.println("char를 입력해주세요 : ");
char ch = sc.next().charAt(0);
sc.nextLine(); // "\n" 제거
System.out.println("String을 입력해주세요 : ");
String str = sc.nextLine();
System.out.println("입력한 int는 : " + i);
System.out.println("입력한 float는 : " + f);
System.out.println("입력한 double은 : " + d);
System.out.println("입력한 char는 : " + ch);
System.out.println("입력한 String은" + str);
int를 입력해주세요 :
5
입력한 값은 : 5
float를 입력해주세요 :
1.1
double을 입력해주세요 :
1.2
char를 입력해주세요 :
A
String을 입력해주세요 :
asdf
입력한 int는 : 5
입력한 float는 : 1.1
입력한 double은 : 1.2
입력한 char는 : A
입력한 String은asdf
package com.kh.scan;
import java.util.Scanner;
public class ScannerTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc= new Scanner(System.in);
System.out.println("이름을 입력해주세요 : ");
String userName = sc.next(); // 공백문자를 받지 않는다 next / nextline
System.out.println("성별을 입력해주세요 : ");
char userGender = sc.next().charAt(0);
sc.nextLine(); // 개행문자 제거
System.out.println("주소를 입력해주세요 :");
String userAddr = sc.nextLine();
System.out.printf("이름 : %s\n" , userName);
System.out.printf("성별 : %s\n" , userGender);
System.out.printf("주소 : %s\n", userAddr);
}
}
이름을 입력해주세요 :
아무개
성별을 입력해주세요 :
남
주소를 입력해주세요 :
서울
이름 : 아무개
성별 : 남
주소 : 서울
package com.kh.scan;
import java.util.Scanner;
public class ScannerTest2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
System.out.println("이름을 입력해 주세요 : ");
String userName = sc.next();
System.out.println("나이를 입력해 주세요 : ");
int userAge =sc.nextInt();
sc.nextLine(); // int 다음 nextline 쓸때 적어야됨
System.out.println("주소를 입력해주세요 : ");
String userAddr = sc.nextLine();
System.out.println("키를 입력해주세요 : ");
double userHeight = sc.nextDouble();
System.out.println("몸무게를 입력해주세요");
double userWeight = sc.nextDouble();
System.out.println("성별을 입력해주세요");
char userGender = sc.next().charAt(0);
System.out.println("이름 : " + userName);
System.out.println("성별 : " + userAge);
System.out.println("주소 : " + userAddr);
System.out.println("키 : " + (int)userHeight);
System.out.printf("몸무게 : %.1f\n" , userWeight); // printf + (x) /// 1은 소수점 1자리
System.out.println("성별 : " + userGender);
}
}
이름을 입력해 주세요 :
아무개
나이를 입력해 주세요 :
20
주소를 입력해주세요 :
서울
키를 입력해주세요 :
180
몸무게를 입력해주세요
70
성별을 입력해주세요
남
이름 : 아무개
성별 : 20
주소 : 서울
키 : 180
몸무게 : 70.0
성별 : 남
'이공계전문기술연수 > Java' 카테고리의 다른 글
< 이공계전문기술연수> 9. Java 조건문 if문 (0) | 2019.08.11 |
---|---|
< 이공계전문기술연수> 8. Java 연산자 / 증감연산자/ 삼항연산자 (0) | 2019.08.07 |
< 이공계전문기술연수> 6. Java 변수(3) 타입변환 (0) | 2019.08.07 |
<이공계전문기술연수> 5. Java 변수(2) 기본타입 (0) | 2019.08.05 |
<이공계전문기술연수> 4. Java 변수(variable) (0) | 2019.08.04 |