[Java] 자바의 입출력

자바 출력



① System.out

 - System.out 객체의 print(), println(), printf()등의 출력 메소드를 이용해 값을 출력할 수 있다.

 - 이 출력 메소드는 매개변수(전달값)을 받아 화면 상으로 출력한다.

 

 - 사용법

1
System.out.print("출력하려는 값 (꼭 문자열이 아니어도 된다)");
cs
( 클래스 이름:System, 객체명:out, 메소드:print() )


* print() : 매개변수의 내용을 출력한다.

  println() : 매개변수의 내용을 출력한 후 자동 줄바꿈한다.

  printf() : 매개변수의 내용을 포맷스트링 형태로 출력한다.


 - 예제

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public class output_ex {
 
    public static void main(String[] args) {
        System.out.println("출력 연습하기");
        String name = "김철수";
        int age = 15;
        double height = 170.5;
        double weight = 64.8;
        System.out.print("이름 : " + name + "\t");
        System.out.print("나이 : " + age + "\t");
        System.out.print("키 : " + height + "\t");
        System.out.print("몸무게 : " + weight + "\t");
        
    }
 
}
cs


 - 결과 




자바 입력 



① System.in

 - 자바에서 제공하는 표준 입력 스트림 객체로, 입력받은 키 값을 바이트 스트림으로 전달한다.

 - 이렇게 전달된 바이트 정보는 문자나 숫자로의 변환이 필요해진다.


② Scanner

 - 자바 패키지에서 제공되는 Scanner 클래스를 이용하면 입력 개체 생성 후에 입력 메소드의 사용이 가능해진다.

 - Scanner는 System.in에 의해 키보드로부터 입력을 받은 바이트 스트림을 문자, 문자열, 정수, 실수 등의 타입으로 변환해준다. 

 - 입력을 받을 때는 공백으로 구분된 토큰 단위로 읽어들인다.


 - 사용법

* 객체 생성 방법

1
Scanner input = new Scanner(System.in);
cs

input이라는 입력 개체가 만들어진다. 저 input이라는 부분은 원하는 이름으로 선언해줘도 괜찮다.


* import문 삽입

1
import java.util.Scanner;
cs

Scanner 클래스를 사용할 때는 항상 프로그램의 가장 앞줄에 위와 같은 코드를 삽입해 주어야 한다.

import문은 다른 패키지의 클래스를 사용하려 할 때 컴파일러가 해당 클래스 파일의 위치를 찾을 수 있게 해주는 것이다.


- 주요 메소드

String next() : 다음 토큰을 찾아 문자열로 반환한다.

String nextLine() : '\n'를 포함한 한 라인 전체를 읽어 문자열로 반환한다.

int nextInt() : 다음 토큰을 찾아 int형으로 반환한다.

long nextLong() : 다음 토큰을 찾아 long형으로 반환한다.

Double nextDouble() : 다음 토큰을 찾아 double형으로 반환한다.

void close() : Scanner의 사용을 종료한다.


- 예제

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/*
 * 오늘의 날짜를 입력받아 출력하는 프로그램
 */
import java.util.Scanner;
public class today {
 
    public static void main(String[] args) {
        System.out.println("년도, 월, 일, 요일을 공백으로 분리하여 순서대로 입력하세요!");
        Scanner output = new Scanner(System.in);//입력 객체 생성
        int year = output.nextInt();//년도
        int month = output.nextInt();//월
        int date = output.nextInt();//일
        String day = output.next();//요일
        output.close();//Scanner 사용 종료
        
        System.out.println("오늘은 " + year + "년 " + month + "월 " + date + "일 " + day + " 입니다.");
    }
 
}
 
cs


- 결과 


더보기

댓글,

violet quartz