[스터디]Java의 정석 2일차

Kristopher·2021년 12월 28일
0

Java 스터디

목록 보기
2/31

(CH2) 2.3 형식화된 출력 ~ (CH2) 4.2 문자형

printf의 사용

자바에서 화면에 출력하기 위한 함수는 여러가지가 있지만 앞선 예제에서는 모두 println()만을 사용하였다. 하지만 println()은 값을 그대로만 출력하고 형식을 변환시킬 수 없다는 단점이 존재한다. 만약 형식을 변환시키고 싶다면 printf()에서 지시자(specifier)를 통해 변수의 형식을 변환하여 출력시키면 된다.

%b : Boolean 형식으로 출력
%d : Demical(10진) 정수의 형식으로 출력
%o : Octal(8진) 정수의 형식으로 출력
%x,%X : Hexa-demical(16진)정수의 형식으로 출력
%f : Floating point(소수점) 형식으로 출력
%e : Exponent 형식으로 출력
%c : Character 형식으로 출력
%s : String 형식으로 출력

변수의 값 입력받기

사용자로부터 값을 입력받고 싶거나 입력받은 값에 따라 출력결과를 다르게 하고 싶은 경우가 있다. 이 경우에는 Scanner 클래스를 통해 값을 입력받게 된다.

import java.util.* // Scanner를 사용하기 위해 Import
class ScannerUsage {
	public static void main(String[] args){
   Scanner scanner = new Scanner(System.in); // Scanner 클래스 객체 생성
   //구현하고 싶은 기능 작성
   }
}

비트와 바이트

bit : 한 자리의 2진수(binary digit의 약자)
byte : bit가 너무 작은 단위이기에 데이터의 기본 단위로서 사용.(8bit)
word : CPU가 한번에 처리할 수 있는 데이터의 크기. CPU 성능에 따라 달라지며 32bit CPU의 경우 1 word는 32bit이고, 64bit CPU의 경우 1 word는 64bit이다.

보수법

n의 보수이란 두 수를 더했을 때 n이 되는 두 수의 관계를 말한다. 컴퓨터에서는 음수를 표현하기 위하여 보수법의 개념을 도입하였다. 10진수로 표현된 음수를 2진수로 표현하는 순서는 아래와 같다.

  • Step 1 : 음수로 표현된 10진수에 절대값을 씌워 양수로 변환한다.
  • Step 2 : 양수로 표현된 수를 2진수 형식으로 바꾼다.
  • Step 3 : 2진수로 바뀐 수의 2의 보수값을 구해 초기 값의 2진 표현을 구할 수 있다.

위의 단계에서 마지막 단계가 잘 이해가 되지 않는다. 2의 보수를 구하는 방법을 모르기 때문인데 2의 보수를 구하는 방법은 아주 간단하다. 2의 보수는 1의 보수에 1을 더한 값이다.(증명 생략) 1의 보수를 구하는 방법은 0을 1로, 1을 0으로만 변환하면 되기 때문에 간단한데 이 값에 1을 더해주면 2의 보수를 쉽게 구할 수 있는 것이다.

인코딩과 디코딩의 개념

인코딩이란 문자를 코드로 변환하는 과정을 의미하며, 디코딩은 이와 반대로 코드를 문자로 변환하는 과정이다. 영어도 encode는 ' 코드화하다'라는 뜻이고, decode는 '암호화하다'라는 뜻이므로 디코딩을 하고 싶다면 어떻게 인코딩 하였는지 알아야 한다.

Reference

Java의 정석
남궁성의 정석코딩

profile
개발자 지망생입니다.

1개의 댓글

comment-user-thumbnail
2021년 12월 29일

오늘도 좋은글 잘 읽고 갑니다!

답글 달기