Java

[Java]Integer types and operations

Woonys 2022. 5. 16. 00:24
반응형

Integer types and operations

Java는 정수를 나타내는 몇 가지 자료형을 제공한다. 실제로, 가장 많이 사용하는 자료형은 intlong이다. 첫번째 타입은 두 번째보다 더 작은 범위의 숫자를 저장할 수 있으나, 보통은 int형만으로도 충분하다.

1. Integer types: the basics

int two = 2;
int ten = 10;

int twelve = two + ten; // 12
int eight = ten - two; // 8
int twenty = two * ten; // 20
int five = ten / two; // 5
int zero = ten % two; // 0, no remainder(나머지 없음)

int minusTwo = -two; // -2

코드 가독성을 높이기 위해, _를 사용해 자릿수를 분리할 수 있다.

int million = 1_000_000;

모든 산술 연산은 long 자료형으로 역시 가능하다.

long one = 1L;
long twentyTwo = 22L; // L, l은 long을 위한 literal이다.

long result = bigNumber + twentyTwo - one;
System.out.println(result); // 100_000_000_021

만약 숫자가 L이나 l로 끝난다면 이는 long 타입으로 간주하며, 따라서 L/l을 쓰지 않으면 int 자료형으로 취급된다. 보통 대문자 L로 쓰는 것이 좋다(l은 숫자 1과 헷갈림). 그러니 웬만하면 long 타입은 2조(2 billion)가 넘는 수에만 쓰는 게 좋다.

2. The forms of the assignment operator

자바에서 역시 대입 연산자와 산술 연산자를 붙여서 사용 가능하다.(+=, -=, *=, %=, /=)

int n = 10;
n = n + 4; // 14
n += 4; // 18

3. Reading numbers from the standard input

규칙 상, 문제를 풀기 위해서는 바깥 세상으로부터 어떤 데이터를 읽어들이고, 과정을 거친 뒤 결과를 출력한다. 아래 프로그램은 표준 입력으로부터 2개의 숫자를 읽고 이를 더한 뒤 합을 출력한다.

import java.util.Scanner;

class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        int a = scanner.nextInt();
        int b = scanner.nextInt();

        int sum = a + b;

        System.out.println(sum);
    }

만약 입력 숫자가 매우 크다는 것을 우리가 이미 알고 있다면, 우리는 int 자료형 대신 long으로 읽어야 할 것이다.

long a = scanner.nextLong();
long b = scanner.nextLong();

long sum = a+b;

4. Conclusion

이번 주제에서, 우리는 int와 long이라는 정수 자료형을 사용해 다양한 산술연산을 수행하는 것에 대해 배웠다. 이제 우리는 데이터를 처리하는 유용한 프로그램을 작성할 충분한 지식을 갖췄다.

반응형