< 이공계전문기술연수> 7. Java 변수와 시스템 입출력 / Scanner

2019. 8. 7. 01:50· 이공계전문기술연수/Java
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
%6d
%-6d
%06d

123
___123
123___
000123

실수 %10.2f
%-10.2f
%010.2f

____123.45
123.45____
0000123.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
'이공계전문기술연수/Java' 카테고리의 다른 글
  • < 이공계전문기술연수> 9. Java 조건문 if문
  • < 이공계전문기술연수> 8. Java 연산자 / 증감연산자/ 삼항연산자
  • < 이공계전문기술연수> 6. Java 변수(3) 타입변환
  • <이공계전문기술연수> 5. Java 변수(2) 기본타입
임쟌
임쟌
임쟌
Jian's Blog
임쟌
전체
오늘
어제

공지사항

  • [자기소개]
  • 쟌's Blog (227)
    • Language (32)
      • Python (8)
      • Go (24)
      • Java (0)
    • Framework (10)
      • Django (9)
      • Gin (1)
      • Spring boot (0)
      • Fiber (0)
    • Database (10)
      • PostgreSQL (8)
      • MySQL (0)
      • Redis (2)
    • Server (51)
      • Linux (16)
      • Git (12)
      • Oracle Cloud Infrastructure (13)
      • Mac (4)
      • Docker (4)
      • RabbitMQ (0)
      • ETC (2)
    • Operating System (0)
      • OS (0)
    • Algorithm (22)
      • Go (22)
      • Python (0)
    • Exam Certification (4)
    • Daily Life (27)
      • Review (21)
      • Diary (6)
    • 이공계전문기술연수 (71)
      • Java (17)
      • Database (8)
      • HTML | CSS (13)
      • JavaScript | jQuery (6)
      • Servlet | JSP (16)
      • Spring Framework (11)

인기 글

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.2
임쟌
< 이공계전문기술연수> 7. Java 변수와 시스템 입출력 / Scanner
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.