Backend/Java

    자바의 정석 정리(7) - 아스키와 유니코드

    인코딩과 디코딩(encoding & decoding) 문자 인코딩(encoding) : 문자를 코드로 변환하는 것 ex) 'A' -> 65 문자 디코딩(decoding) : 코드를 문자로 변환하는 것 ex) 65 -> 'A' 아스키(ASCII) 정보 교환을 위한 미국 표준 코드 128개(=2^7)의 문자 집합을 제공하는 7 bit 부호, 처음 32개의 문자는 인쇄와 전송 제어용으로 사용되는 제어문자로 출력할 수 없음 마지막 문자(DEL)를 제외한 33번째 이후의 문자들은 출력할 수 있는 문자들로 기호와 숫자, 영대소문자로 이루어져 있음 숫자 0 ~ 9, 영문자 A ~ Z, a ~ z 가 연속적으로 배치되어 있어 프로그래밍에서 유용하게 활용됨 확장 아스키와 한글 데이터 단위인 byte 기준, 아스키는 7 ..

    자바의 정석 정리(6) - 기본형 타입

    기본형(primitive type) 논리형 - boolean true 와 false 중 하나를 저장가능, 기본값은 false 대답(yes/no), 스위치(on/off) 등의 논리구현에 주로 사용 1bit만으로 충분하지만 자바에서는 데이터 최소단위가 byte이므로 boolean의 크기는 1byte 자바에서는 대소문자를 구분하므로 true or false 만 사용가능 문자형 - char 단 하나의 문자만 저장 가능 문자는 작은 따옴표 ''로 표기 변수에 문자가 저장되는 것이 아닌 문자의 유니코드(정수)가 저장된다 컴퓨터는 숫자밖에 모르기에 모든 데이터를 숫자로 변환하여 저장한다 문자 'A'의 유니코드는 65이므로 변수에는 65가 저장된다 ex) char ch = 'A' = 65 어떤 문자의 유니코드를 알고 ..

    자바의 정석 정리(5) - 진법과 보수

    진법 10진법과 2진법 10진법 : 0~9의 숫자로만 데이터를 표현 2진법 : 0과 1의 숫자로만 데이터를 표현 비트(bit, binary digit) : 한 자리의 2진수, 컴퓨터가 값을 저장할 수 있는 최소단위 바이트(byte) : 비트 8개를 묶은 단위(=8bit), 데이터의 기본 단위 워드(word) : CPU가 한 번에 처리할 수 있는 데이터의 크기, CPU의 성능에 따라 워드의 크기가 달라짐 ex) 32비트 CPU -> 1word = 32비트, 64비트 CPU -> 1word = 64비트 n비트로 표현할 수 있는 10진수 값의 개수 : 2^n 값의 범위 : 0 ~ 2^n - 1 8진법과 16진법 8진수 : 2진수 3자리를 한 자리로 표현 16진수 : 2진수 4자리를 한 자리로 표현 2진수 10..

    자바의 정석 정리(4) - 실수형 출력

    실수형 값 출력 사용 지시자 %f : 주로 쓰임, 기본적으로 소수점 아래 6자리까지만 출력(7자리에서 반올림) %(전체자리).(소수점아래자리)f로 표현 ex) System.out.printf("d=%14.10f%n", d); // 전체 14자리 중 소수점 아래 10자리 지시자 '%s'에 숫자 추가시에도 원하는 만큼의 출력 공간 확보하거나 문자열의 일부만 출력 가능 %e : 지수형태로 출력시 사용 %g : 값을 간략하게 표현할 때 사용 %s // 문자열의 길이만큼 출력공간을 확보 %10s // 최소 10글자 출력공간 확보 (우측정렬) %-10s // 최소 10글자 출력공간 확보 (좌측정렬) %.5s // 왼쪽에서 5글자만 출력

    자바의 정석 정리(3) - Scanner

    자바의 정석 정리(3) - Scanner

    화면에서 입력 받기 - Scanner 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 import java.util.*; // Scanner를 사용하기 위해 추가 public class ScannerEx { public static void main(String[] args) { Scanner scanner = new scanner(System.in); // scanner 클래스의 객체를 생성 System.out.print("두자리 정수를 하나 입력해주세요.>"); String input = scanner.nextLine(); // 입력 받은 내용을 input에 저장 int num = Integer.parseInt(input); // 입력 받은 문자열을 숫자로 변환 System.ou..

    자바의 정석 정리(2) - 리터럴과 지시자

    문자 리터럴과 문자열 리터럴 문자 리터럴 : 작은따옴표로 문자 하나를 감싼 것 ex) 'A' 문자열 리터럴 : 큰 따옴표로 두 문자 이상을 감싼 것 ex) "auto" char : 단 하나의 문자만 저장 가능 (반드시 안에 하나의 문자가 있어야 함) String : 두 문자이상의 여러 문자 저장 가능 (빈 문자열 : 안에 아무런 문자도 넣지 않는 것을 허용) 문자열 + any type -> 문자열 + 문자열 -> 문자열 any type + 문자열 -> 문자열 + 문자열 -> 문자열 줄바꿈 문자 : '%n' or '\n' (OS마다 줄바꿈 문자가 다를 수 있기에 '%n' 사용하는 것이 더 안전) 지시자 목록 %b : 불리언(boolean) 형식으로 출력 %d : 10진(decimal) 정수의 형식으로 출력..

    자바의 정석 정리(1) - 변수의 타입

    변수의 타입 기본형 변수 : 실제 데이터 값을 저장 논리형(boolean : 1byte), 문자형(char : 2byte), 정수형(int : 4byte, short : 2byte, byte : 1byte, long : 8byte), 실수형(float : 4byte, double : 8byte) 참조형 변수 : 주소 값을 가짐 클래스의 이름이 참조변수의 타입이 됨 ex) 클래스 이름 변수 이름; 실수형의 정밀도 float : 7자리 double : 15자리 상수(constant) : 변수와 달리 값이 달라지지 않음 변수 타입 앞에 final을 적어 선언 및 초기화를 진행해야됨 프로그래밍에서의 정의 변수(variable) : 하나의 값을 지정하기 위한 공간 상수(constant) : 값을 한번만 저장할 수..