2. Which of the following is the correct syntax to convert an int variable num to an Integer object?
easy
A. Integer numObj = Integer.valueOf(num);
B. Integer numObj = Integer.parseInt(num);
C. Integer numObj = num.intValue();
D. Integer numObj = Integer.toString(num);
Solution
Step 1: Identify method to get Integer object
valueOf converts primitive int to Integer object.
Step 2: Check other options
parseInt returns primitive int, not Integer object. intValue() is a method of Integer, not int. toString returns String, not Integer.
Final Answer:
Integer.valueOf(num) -> Option A
Quick Check:
valueOf returns Integer object [OK]
Hint: Use valueOf to get Integer object from int [OK]
Common Mistakes:
Using parseInt with int input
Calling intValue() on primitive int
Confusing toString with valueOf
3. What will be the output of the following code?
String s = "123";
Integer obj = Integer.valueOf(s);
int n = obj.intValue();
System.out.println(n + 10);
medium
A. 133
B. Compilation error
C. NumberFormatException
D. 12310
Solution
Step 1: Convert String to Integer object
Integer.valueOf("123") creates Integer object with value 123.
Step 2: Extract primitive int and add 10
intValue() returns 123 as int. Adding 10 results in 133.
Final Answer:
133 -> Option A
Quick Check:
123 + 10 = 133 [OK]
Hint: valueOf + intValue() converts string to int for math [OK]
Common Mistakes:
Thinking output is string concatenation
Expecting NumberFormatException for valid number string
Confusing intValue() usage
4. Identify the error in the following code snippet:
String s = "456";
int n = Integer.valueOf(s);
System.out.println(n);
medium
A. Missing semicolon after Integer.valueOf(s)
B. String s cannot be converted to Integer
C. Cannot assign Integer object to int directly
D. No error, code runs fine
Solution
Step 1: Check return type of Integer.valueOf
valueOf returns an Integer object.
Step 2: Auto-unboxing allows assignment
Java (5+) automatically unboxes Integer to int, so the code compiles and runs, printing 456.
Final Answer:
No error, code runs fine -> Option D
Quick Check:
valueOf(String) auto-unboxes to int [OK]
Hint: valueOf(String) auto-unboxes to int [OK]
Common Mistakes:
Forgetting auto-unboxing feature
Assuming valueOf returns primitive int
Thinking String can't convert to Integer
5. You have a list of numeric strings: ["10", "20", "30", "40"]. Which code snippet correctly converts this list to a list of Integer objects using wrapper methods?
hard
A. List<Integer> nums = list.stream().map(String::parseInt).collect(Collectors.toList());
B. List<Integer> nums = list.stream().map(Integer::valueOf).collect(Collectors.toList());
C. List<Integer> nums = list.stream().map(s -> s.intValue()).collect(Collectors.toList());
D. List<Integer> nums = list.stream().map(s -> Integer.toString(s)).collect(Collectors.toList());
Solution
Step 1: Understand method return types
Integer.valueOf(String) returns an Integer object, suitable for list of Integer.
Step 2: Check other options
String::parseInt invalid - no parseInt on String. s.intValue() not a method on String. toString returns String, not Integer.
Final Answer:
list.stream().map(Integer::valueOf).collect(Collectors.toList()) -> Option B
Quick Check:
valueOf converts String to Integer object [OK]
Hint: Use valueOf to convert String to Integer object in streams [OK]
Common Mistakes:
Thinking parseInt is a String method
Calling intValue() on String
Using toString instead of valueOf
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.