The second small change from coin project, new numeric litterals has been integrated to jdk7/tl workspace and will be soon promoted into jdk7 main workspace.

The patch introduces two new notations for numeric litterals:

  1. Binary litteral
    Litteral coded in binary starting with prefix 0b. This prefix can be prefixed by minus for negative number.
         0b11 == 3

    -0b11 == -3
    More examples here.

  2. Underscores in litterals
    Allow to use underscore ('_') to separate digits in litterals. Underscore can be used anywhere between two digits.
         long aBankAccountBalance = 1_000_000_000;

    long aVisaCardNumber = 1234_1234_1234_1234;

    long aFrenchPhoneNumber = 01_60_95_77_33;
Of course, these two new syntax can be mixed:
    int value = 0b11111111_00000000_11111111_00000000;


JDK7 에는 기본 자료형 중 숫자와 관련된 표현식이 두개가 추가가 될 것으로 보여집니다.
첫번째로는, 접두사 '0b'입니다. 접두사 '0b'는 2진수를 표현하기 위한 접두사입니다. 접두사 '0b'앞에 '-'를 붙여서 '-0b'를 접두사로 붙이면 음수를 표현할 수도 있다고 합니다.

두번째로, '_'를 이용하여 각기다른 숫자를 표현할 수 있게 된다고 합니다. 예제는 위에서 보시는 2번 항목과 같습니다. 그렇다면, 언더바의 차이를 이용해서 각기다른 값에 대한 표현이 가능해지겠습니다. 그런데 왜 그렇게 할까요? ㅡ_-)?

전화번호 같은 경우
01099998888 로 객체를 표현할 경우 이를 010_9999_8888 로 해서 구분할 수 있도록 만들려는 것일까요?
개발하여 사용하는 국가들의 양식에 맞춰서 쓸 수 있도록 유연성을 높인 표현방식일 수도 있겠다라는 생각을 해봅니다.

당연히, 두가지의 표현식을 합쳐서 사용할 수도 있다고 합니다.

+ Recent posts