Bird
Raised Fist0
Kotlinprogramming~5 mins

Number literal formats (underscore, hex, binary) in Kotlin - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the purpose of using underscores in Kotlin number literals?
Underscores in Kotlin number literals make large numbers easier to read by visually separating digits, like commas in regular numbers. They do not affect the actual value.
Click to reveal answer
beginner
How do you write a hexadecimal number literal in Kotlin?
In Kotlin, a hexadecimal number literal starts with 0x or 0X followed by digits 0-9 and letters A-F (case insensitive). For example, 0x1A3F.
Click to reveal answer
beginner
How do you write a binary number literal in Kotlin?
A binary number literal in Kotlin starts with 0b or 0B followed by only 0s and 1s. For example, 0b1010_1101.
Click to reveal answer
intermediate
Can underscores be placed anywhere in Kotlin number literals?
Underscores can be placed between digits in Kotlin number literals to improve readability, but not at the start or end of the number, nor next to the decimal point or prefixes like 0x or 0b.
Click to reveal answer
intermediate
Example: What is the decimal value of 0xFF_EC_DE_5E in Kotlin?
The hexadecimal literal 0xFF_EC_DE_5E equals 4293713502 in decimal. The underscores are ignored when computing the value.
Click to reveal answer
Which of the following is a valid Kotlin binary literal?
A0b1021
B0x1010_1101
C1010_1101b
D0b1010_1101
What does the underscore do in Kotlin number literals?
AMarks the number as hexadecimal
BMultiplies the number by 1000
CSeparates digits for readability without changing the value
DIndicates a negative number
Which prefix is used for hexadecimal literals in Kotlin?
A0x
B#
C0b
D0h
Is this Kotlin number literal valid? 0x_1A3F
ANo, underscore cannot be right after the prefix
BYes, underscores can be anywhere
CYes, but only in binary literals
DNo, underscores are not allowed in hex literals
What is the decimal value of 0b1111_0000?
A15
B240
C11110000
D128
Explain how to write and use underscores in Kotlin number literals.
Think about how commas help read big numbers.
You got /4 concepts.
    Describe how to write hexadecimal and binary number literals in Kotlin with examples.
    Remember the prefixes and allowed digits.
    You got /4 concepts.

      Practice

      (1/5)
      1. Which of the following is a valid way to write the number one million in Kotlin using underscores for readability?
      easy
      A. 1__000000
      B. 1000_000_
      C. 10__00_000
      D. 1_000_000

      Solution

      1. Step 1: Understand underscore usage in Kotlin numbers

        Kotlin allows underscores between digits to improve readability, but they must not be consecutive, leading, or trailing.
      2. Step 2: Check each option for correct underscore placement

        1_000_000 uses single underscores separating groups of three digits correctly. A has consecutive underscores (invalid). B has trailing underscore (invalid). C has consecutive underscores (invalid).
      3. Final Answer:

        1_000_000 -> Option D
      4. Quick Check:

        Underscores separate digits properly = 1_000_000 [OK]
      Hint: Use single underscores between digit groups only [OK]
      Common Mistakes:
      • Using double underscores
      • Placing underscores at start or end
      • Trailing underscores
      2. Which of the following Kotlin number literals is NOT valid syntax?
      easy
      A. 123_456_
      B. 0b1010_1101
      C. 0x1A3F
      D. 987_654

      Solution

      1. Step 1: Review Kotlin rules for underscores in number literals

        Underscores can be used between digits but not at the end or start of a number.
      2. Step 2: Check each option for trailing underscores

        123_456_ ends with an underscore, which is invalid syntax. Options A, B, and D are valid hexadecimal, binary, and decimal literals respectively.
      3. Final Answer:

        123_456_ -> Option A
      4. Quick Check:

        Trailing underscore invalid = 123_456_ [OK]
      Hint: Never put underscore at the end of a number [OK]
      Common Mistakes:
      • Trailing underscores in numbers
      • Confusing hex prefix 0x with decimal
      • Misplacing underscores in binary literals
      3. What is the output of this Kotlin code?
      val x = 0xF_A
      val y = 0b1010_1010
      println(x + y)
      medium
      A. 270
      B. 250
      C. 420
      D. 280

      Solution

      1. Step 1: Convert hexadecimal and binary literals to decimal

        0xF_A means hex FA: F=15, A=10, so 15*16 + 10 = 250. 0b1010_1010 is binary 10101010 which equals 128+32+8+2=170.
      2. Step 2: Add the decimal values

        250 + 170 = 420.
      3. Final Answer:

        420 -> Option C
      4. Quick Check:

        (0xFA + 0b10101010) = 420 [OK]
      Hint: Convert hex and binary to decimal before adding [OK]
      Common Mistakes:
      • Misreading hex digits
      • Incorrect binary to decimal conversion
      • Ignoring underscores in literals
      4. Identify the error in this Kotlin code snippet:
      val num = 0b1021_0010
      medium
      A. Underscores are not allowed in binary literals
      B. Binary literals cannot contain digits other than 0 or 1
      C. Binary literals must start with 0x
      D. The number is too large for binary format

      Solution

      1. Step 1: Understand valid digits in binary literals

        Binary literals can only contain digits 0 and 1, optionally separated by underscores.
      2. Step 2: Check the given literal for invalid digits

        The literal contains '2', which is invalid in binary. Underscores are allowed, and binary literals start with 0b, not 0x.
      3. Final Answer:

        Binary literals cannot contain digits other than 0 or 1 -> Option B
      4. Quick Check:

        Binary digits must be 0 or 1 only [OK]
      Hint: Binary digits only 0 or 1, no other digits allowed [OK]
      Common Mistakes:
      • Using digits other than 0 or 1 in binary
      • Confusing hex prefix 0x with binary 0b
      • Thinking underscores are disallowed in binary
      5. You want to represent the decimal number 255 in Kotlin using a binary literal with underscores for readability. Which of the following is the best way to write it?
      hard
      A. 0b1111_1111
      B. 0b11111111
      C. 0b1111_1110
      D. 0b1111_11112

      Solution

      1. Step 1: Convert decimal 255 to binary

        255 in binary is 11111111 (eight ones).
      2. Step 2: Add underscores for readability

        Grouping bits in fours is common, so 1111_1111 is clearer and valid.
      3. Step 3: Check options for correctness

        0b1111_1111 correctly uses underscores and matches 255. 0b11111111 is correct but less readable. 0b1111_1110 is 254, and 0b1111_11112 has invalid digit '2'.
      4. Final Answer:

        0b1111_1111 -> Option A
      5. Quick Check:

        Binary 1111_1111 = 255 decimal [OK]
      Hint: Group binary digits in fours with underscores [OK]
      Common Mistakes:
      • Using wrong binary digits
      • Adding invalid digits like 2
      • Not grouping bits for readability
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard