1. 출력 메소드
1) System.out.print() : 단순 출력 (출력 후에 줄바꿈 x)
2) System.out.println () : 한줄 출력 (출력 후 자동으로 줄 바꿈 수행)
System.out.println("테스트1"); // 한줄출력, 줄 바꿈 가능
System.out.println("테스트2"); //
System.out.print("테스트3"); // 단순 출력, 줄 바꿈 불가
System.out.print("테스트4");
System.out.println("테스트6");
System.out.println("테스트7");
3) System.out.printf("%형식", 변수) :
출력될 문자열 형식을 패턴으로 지정하는 출력구문 / 줄 바꿈 x
정해진 패턴대로 들어갈 변수를 순차적으로 정해줌(변수는 콤마로 구분)
1. % 형식
%d 정수형 / %c 문자 / %s 문자열 / %f 실수(소숫점 아래 6자리까지) / %b 논리형
int iNum1 = 10;
int iNum2 = 5;
// 10 + 10* 5 /2 = 35
System.out.println(iNum1 + "+" + iNum1 + "*" +iNum2 +"/"+2 + "=" + (iNum1+(iNum1*iNum2/2)));
// printf를 이용하지 않는다면 이렇게 길게 사용한다.
System.out.printf("%d+%d*%d/2 = %d\n", iNum1,iNum1,iNum2,iNum1+iNum1*5/2);
printf를 이용하게 되면 형식으로 지정하기에 코드 간소화가 가능하다.
2. 정렬방법 및 패턴연습
① 공간확보
형식 : %띄어쓰기 원하는 숫자d
ex. %5d : 5칸을 확보하고 오른쪽 정렬
%-5d : 5칸을 확보하고 왼쪽 정렬
정렬하고 싶다면 %d 사이에 띄고 싶은 만큼 숫자를 넣어주면 된다.
또한 가독성이 좋기 위해서 %숫자d\n를 넣어주면 줄바꿈이 되어 보이 더 편한다.
int iNum = 3;
System.out.printf("%d", iNum);
System.out.printf("%7d", iNum);
System.out.printf("%-7d", iNum);
System.out.println();
System.out.printf("%d\n", iNum);
System.out.printf("%7d\n", iNum);
System.out.printf("%-7d\n", iNum);
②. 소수점자리 제어(반올림처리)
형식 : %. 소수점자리숫자 f
ex. %.2f: 소수점 2칸까지 노출
%.0f 반올림처리
System.out.printf("%f\n",10/4.0); // 2.500000
System.out.printf("%.2f\n",10/4.0); // 2.50
System.out.printf("%.0f\n",10/4.0); // 3
③ 문자열 노출 방법
//문자, 문자열, boolean
boolean isTrue = false;
char ch = '얍';
String str = "배고파요"; // String은 참조형 (기본자료형을 뺸 나머지)
// '' : char 리터럴 표기법
// "" : String 리터럴 표기법
System.out.printf("%b /%c /%s\n",isTrue,ch,str); // false /얍 /배고파요
④ 특수문자 표현방법
System.out.println("\\o/"); //백슬래시 출력 방법
System.out.println("a\tb\tc\td") ;// tap 출력
System.out.println("\" "); //쌍 따옴표 단순 문자 출력
System.out.println(" \' "); //홀 따옴표 단순 문자 출력
System.out.println("\u0041"); // 유니코드(16진수) 번호로 출력
2. Scanner (현업에서 사용하진 않음)
ㄴ 프로그램 실행 중 키보드 입력을 받을 수 있게 하는 역할
ㄴ 프로그램안에 스캐너라는 기계를 만드는 것이다.
Scanner sc = new Scanner(System.in); -> 만 작성하게 되면, 오류가 발생함 -> import java.util.Scanner; 작성시 오류해결
package edu.kh.variable.ex2;
import java.util.Scanner; // 입력 시 ① 생성해야함
public class ParkJinaEx {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); // 입력 시 ① 생성해야함
System.out.print("정수 1 입력 : ");
int input1 =sc.nextInt();
System.out.print("정수 2 입력 : ");
int input2 =sc.nextInt();
System.out.printf("%d+%d=%d",input1,input2,input1+input2);
정수형작성
.nextInt()
실수형작성
.nextDouble()
문자형작성
.next()
next() 와 nextLine() 차이를 설명하는 결과이다.
- next() : 한 단어 (띄어쓰기 , 엔터를 만나면 입력 종료)
- nextLine() : 한 문장 (엔터를 만나면 입력을 종료)
package edu.kh.variable.ex2;
import java.util.Scanner;
public class ParkJinaEx1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("입력 :");
String str = sc.nextLine();
// next() : 한 단어 (띄어쓰기 , 엔터를 만나면 입력 종료)
// nextLine() : 한 문장 (엔터를 만나면 입력을 종료)
System.out.print(str);
System.out.println("---------------------------");
System.out.print("nextInt() :");
int a = sc.nextInt();
// 입력버퍼에 엔터가 하나 남아 있다.
sc.nextLine(); // nextInt 엔터를 제거하기 위해서 작성
// 만일 제거하지 않으면 뒤에 nextLine에 엔터를 만나서 종료가 된다.
System.out.print("nextLine():"); // 입력버퍼 : [ a b c (엔터) ]
String s =sc.nextLine();
System.out.println("종료");
}
}
짧게 요약하자면, 아래와 같다.
int b = sc.nextInt(); // 1(엔터)
// 입력버퍼에 엔터 하나가 남아 있음
sc.nextLine();
// 입력버퍼에 남아 있는 (엔터)를 만나서 nextLine이 끝나버림 (입력 버퍼에 남아 있는 엔터 날려주기용)
// 중간마다 엔터를 날려주는 애를 안넣어주면 바로 다음 실행되는 입력문과 실행이 안됨
int c = sc.nextInt(); // 2(엔터)
int d = sc.nextInt(); // 3(엔터)
3. 연산자
1) 증감 (증간 ++ / 감소 -- 연산자)
- 피연산자 (값)을 1증가 또는 1감소 시키는 연산자
int iNum1 =10;
int iNum2 =10;
iNum1++; //1증가
iNum2--; //1감소
System.out.println("iNum1:" + iNum1); 정답 : 11
System.out.println("iNum2:" + iNum2); 정답 : 9
'ON > JAVA' 카테고리의 다른 글
1주차_지금까지 이해하지 못한 것 개념이 확실하지 않는 것에 대해서 정리 (0) | 2023.04.21 |
---|---|
5일차_반복문 (1) | 2023.04.20 |
04일차_ 연산자/ if문 / switch 문을 배우다 . (0) | 2023.04.19 |
v02. 2일차_ 변수/변수명명/ 형변환/자료형을 공부하다. (0) | 2023.04.17 |
01일차. 프로그래밍 기초 (0) | 2023.04.17 |