Bird
Raised Fist0
Javaprogramming~10 mins

Operator precedence in Java - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to correctly calculate the result using operator precedence.

Java
int result = 5 + 3 [1] 2;
Drag options to blanks, or click blank then click option'
A*
B+
C-
D/
Attempts:
3 left
💡 Hint
Common Mistakes
Using + instead of * causes the addition to happen first, changing the result.
2fill in blank
medium

Complete the code to correctly evaluate the expression considering operator precedence.

Java
int value = 10 - 4 [1] 2;
Drag options to blanks, or click blank then click option'
A*
B+
C-
D/
Attempts:
3 left
💡 Hint
Common Mistakes
Using + instead of * changes the operation order and result.
3fill in blank
hard

Fix the error in the expression to respect operator precedence and get the correct result.

Java
int output = 20 / 4 [1] 2;
Drag options to blanks, or click blank then click option'
A/
B*
C+
D-
Attempts:
3 left
💡 Hint
Common Mistakes
Using * or / again changes the order and result unexpectedly.
4fill in blank
hard

Fill both blanks to create a map of numbers to their doubled values only if the number is greater than 3.

Java
Map<Integer, Integer> squares = IntStream.range(1, 6)
    .filter(n -> n [1] 3)
    .boxed()
    .collect(Collectors.toMap(n -> n, n -> n [2] 2));
Drag options to blanks, or click blank then click option'
A>
B*
C<
D+
Attempts:
3 left
💡 Hint
Common Mistakes
Using < instead of > in filter selects wrong numbers.
Using + instead of * does addition, not doubling.
5fill in blank
hard

Fill all three blanks to create a map of uppercase strings to their lengths only if the length is greater than 4.

Java
Map<String, Integer> result = words.stream()
    .filter(word -> word.length() [1] 4)
    .collect(Collectors.toMap(word -> word.[2](), word -> word.[3]()));
Drag options to blanks, or click blank then click option'
A<
Blength
C>
DtoUpperCase
Attempts:
3 left
💡 Hint
Common Mistakes
Using < instead of > in filter.
Using length instead of toUpperCase for keys.
Using toUpperCase instead of length for values.

Practice

(1/5)
1. Which operator has the highest precedence in the expression 3 + 4 * 5?
easy
A. Subtraction (-)
B. Addition (+)
C. Division (/)
D. Multiplication (*)

Solution

  1. Step 1: Identify operators in the expression

    The expression has addition (+) and multiplication (*).
  2. Step 2: Recall operator precedence rules

    Multiplication (*) has higher precedence than addition (+), so it runs first.
  3. Final Answer:

    Multiplication (*) -> Option D
  4. Quick Check:

    Multiplication > Addition [OK]
Hint: Multiplication and division run before addition and subtraction [OK]
Common Mistakes:
  • Thinking addition runs before multiplication
  • Ignoring operator precedence
  • Assuming left to right always applies
2. Which of the following expressions is syntactically correct in Java?
easy
A. int result = 5 + (3 * 2);
B. int result = 5 + * 3;
C. int result = 5 + 3 *;
D. int result = 5 + 3 * 2))

Solution

  1. Step 1: Check each expression for syntax errors

    int result = 5 + * 3; has an invalid operator sequence '+ *'. int result = 5 + 3 *; ends with '*;' which is incomplete. int result = 5 + 3 * 2)) has unmatched parentheses.
  2. Step 2: Validate correct syntax

    int result = 5 + (3 * 2); uses parentheses properly and valid operators, so it is correct.
  3. Final Answer:

    int result = 5 + (3 * 2); -> Option A
  4. Quick Check:

    Valid syntax uses proper operators and balanced parentheses [OK]
Hint: Check for balanced parentheses and valid operator placement [OK]
Common Mistakes:
  • Leaving operators without operands
  • Unbalanced parentheses
  • Using invalid operator sequences
3. What is the output of the following Java code?
int x = 2 + 3 * 4 - 6 / 2;
System.out.println(x);
medium
A. 12
B. 10
C. 11
D. 14

Solution

  1. Step 1: Apply operator precedence to the expression

    Multiplication and division run before addition and subtraction:
    3 * 4 = 12
    6 / 2 = 3
  2. Step 2: Calculate the expression left to right

    Expression becomes: 2 + 12 - 3
    2 + 12 = 14
    14 - 3 = 11
  3. Final Answer:

    11 -> Option C
  4. Quick Check:

    2 + (3*4) - (6/2) = 11 [OK]
Hint: Do multiplication/division first, then addition/subtraction [OK]
Common Mistakes:
  • Adding before multiplying
  • Ignoring division precedence
  • Calculating left to right without precedence
4. The following code throws a compilation error. What is the cause?
int a = 5;
int b = 10;
int c = a + * b;
medium
A. Incorrect variable declaration
B. Missing operand between + and * operators
C. Missing semicolon at the end
D. Using undeclared variable

Solution

  1. Step 1: Analyze the expression syntax

    The expression 'a + * b' has two operators '+' and '*' without a number or variable between them, which is invalid.
  2. Step 2: Identify the compilation error cause

    Java expects an operand between operators. The missing operand causes a syntax error.
  3. Final Answer:

    Missing operand between + and * operators -> Option B
  4. Quick Check:

    Operators must have operands between them [OK]
Hint: Check for missing operands between operators [OK]
Common Mistakes:
  • Assuming multiple operators can be together
  • Ignoring syntax errors
  • Confusing variable declaration with expression errors
5. Consider the expression:
int result = 10 - 2 * 3 + 4 / 2;

How can you change the expression using parentheses to make addition happen before multiplication and subtraction?
hard
A. int result = 10 - (2 * (3 + 4 / 2));
B. int result = (10 - 2) * (3 + 4) / 2;
C. int result = 10 - ((2 * 3) + (4 / 2));
D. int result = 10 - (2 * 3 + 4) / 2;

Solution

  1. Step 1: Understand original precedence

    Original expression evaluates multiplication and division first:
    2 * 3 = 6
    4 / 2 = 2
    Then subtraction and addition left to right:
    10 - 6 + 2 = 6
  2. Step 2: Use parentheses to make addition happen before multiplication and subtraction

    To add before multiplication, group inside parentheses:
    3 + 4 / 2
    Since division has higher precedence, 4 / 2 = 2, so 3 + 2 = 5
    Expression becomes:
    10 - (2 * 5) = 10 - 10 = 0
  3. Final Answer:

    int result = 10 - (2 * (3 + 4 / 2)); -> Option A
  4. Quick Check:

    Parentheses change order to add before multiply [OK]
Hint: Use parentheses to group operations you want first [OK]
Common Mistakes:
  • Misplacing parentheses changing meaning
  • Ignoring division precedence inside parentheses
  • Assuming parentheses don't affect order
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