본문 바로가기

04번. IT 힌트얻기/▶ 자바

자바실습1) 5명의 점수 입력받아 총점,평균 구하기

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Test{
 public static void main(String []args) throws IOException{
  BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
  int a[][] = new int[5][3];
  int sum[] = new int[5];
  double avg[] = new double[5];
  String t[] = {"국어","영어","수학"};
  
  for(int i=0; i<a.length; i++){
   for(int j=0; j<a[i].length; j++){
    System.out.print(t[j]+"점수:");
    a[i][j] = Integer.parseInt(br.readLine());
    sum[i] += a[i][j];
    avg[i] = sum[i]/3.0
   }
   System.out.println("총점:"+sum[i]+ " " +"평균:" + avg[i]);
  }
 }
}

▶ 자바에서 키보드를 통해 입력받기

java.io
클래스 BufferedReader
java.lang.Object

    java.io.Reader
        ↘
             java.io.BufferedReader

문자열 입력받기

InputStreamReader sr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(sr)

System.out.println("문자열 입력 : ");
String inputData = br.readLine();
System.out.println(inputData);

정수 입력받기

InputStreamReader sr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(sr)

System.out.println("숫자 입력: ");
int inputData = Integer.parseInt(br.readLine());


클래스 InputStreamReader

InputStreamReader는 바이트 스트림을 캐릭터 스트림으로 바꾸어 주는 가교 역할을 하는 클래스로, 지정된 캐릭터 셑(charset)을 이용해 바이트를 캐릭터로 디코드합니다.  캐릭터 셑은 이름을 지정할 수도 있고, 해당 시스템의 기본 케릭터 셑을 이용할 수도 있습니다.

InputStreamReader의 read()메소드는 바이트 입력 스트림으로부터 하나 또는 그 이상의 바이트를 읽어들일 수 있는데, 변환의 효율성을 위해서 복수개의 바이트를 읽어들이는 것도 좋다.
효율성을 위해 InputStream을 BufferedReader로 래핑하는 것도 좋다.