-
[JAVA] 입출력기초/JAVA 2017. 1. 11. 10:04
오늘은 입력과 출력문에 대해서 포스팅 할께요!
출력(println)
System.out.println("안녕하세요");
System <안에 out<안에 println함수에 문자열을 넣어서 출력을 하는겁니다.
print[ln] 여기서 ln은 \n의 역할을 하는데요 즉, 띄어쓰기의 역할을 하는것을 알수있어요!
또한 Enter의 역할을 계속 하고 싶을때는 문장안에 [\n]만 붙여주면 enter의 역할을 한다는것도 알아두시면 편하겠네요!
만약 띄어쓰기를 하기 싫은 출력문을 사용하고 싶으시면
print("[Enter] 치기 싫어요");
라고 출력하시면 되요!
입력(Scanner)
출력을 하는게 있으면 당연히 입력을 받아야 겠죠?
import java.util.Scanner;
java.util 패키지에 있는 Scanner클래스를 선언해주는 부분이예요
import 부분은 처음나왔으니깐 설명이 필요하겠네요
import는 현재 디렉토리(패키지)에 존재하지 않는 클래스를 선언해야 할 경우 사용해요.
패키지의 위치를 정확히 알 수 있어야 사용이 가능합니다.
import 패키지명.클래스명;
import 패키지명.*;
로 사용하시면 되겠습니다!
Scanner도 java.util.Scanner;로 선언할 수 있지만
java.util.*;로 선언할 수 도 있어요.
하지만 학생들을 OO고등학교 [궁뎅이]학생!을 찾는것보다
OO고등학교 2학년 B반 [궁뎅이]학생!을 찾는게 훨씬 빠르겠죠??
프로그램도 마찬가지예요.
특정구간을 지정해주면 파일을 다 안찾고 할수 있기떄문에 Scanner로 지정해주는 습관이 필요해요!
Scanner scan = new Scanner(System.in);
자바 포스팅에서 처음 객체를 생성해주는 구간이 나왔네요.
자바에서는 객체를 생성할 때 new라는 예약어를 사용해서 객체를 생성해요!
계속 뒤로 미루게 되는데 ... 객체는 뒤에서 클래스와 상속포스팅할 때 정리할께요...ㅜ
Scanner 클래스 타입의
scan(변수명)을 선언해주면서
Scanner(System.in)을 통해 scan객체를 만들어 주는 모습입니다!
여기서 보시면 println(); 함수안에서 [+]기호에 눈이 가실꺼라고 생각합니다!
+기호는 문장과 변수, 문장과 문장, 사칙연산에 사용하는데요
그림처럼 문장안에 변수를 추가하고 싶을떄 "무우우운장1"+[변수이름]+"무우우운장2" 해주시면 한줄로 이어져서 나옵니다!
Scanner함수는 자신이 받아야할 값을 정확히 지정해서 받아줘야 합니다!
안그러면 오류나요^^
Q.그럼 이제 이름, 나이, 주소를 입력받아서 동시에 출력하는 프로그램 만들기
hint : 문자열 name, area
정수형 age
println(name); << 변수의 값이 출력된다!
여기서 보면 area를 입력받을 때 scan.nextLine();이 위에 추가된것이 보이시나요?
이클립스인지 자바문제인지는 모르겠으나
nextInt();로 받은 경우 다음번에 nextLine();을 호출하게 되면 무시하고 가는 버그가 발생하더라구요!
그래서 저는
nextLine으로 계속받고 형변환해주는 식으로 하는데요!
형변환이 기억안나시면 지난 포스트로 가서 보시고 오셔야되요!
이렇게 하시면 될것같습니다!
nextLine();을 한줄 추가해서 버그를 막던가
저처럼 형변환을 사용해서 사용하던가 프로그래머의 마음이겠죠^^
다음번에는 조건문과 반복문에대해서 포스팅하겠습니다!
'기초 > JAVA' 카테고리의 다른 글
[JAVA] 반복문 (0) 2017.01.12 [JAVA] 조건문 (0) 2017.01.11 [JAVA] 골격 및 주석 (0) 2017.01.10 [JAVA]final 한정자, 변수와 타입 그리고 형변환(casting) (0) 2017.01.10 JAVA 환경변수 설정 win7 (0) 2017.01.04