Courseiva
Question 188 of 513

1Z0-829 Practice Question: Handling Date, Time, Text, Numeric and Boolean Values

A program reads user input as a string and needs to parse it into an integer, handling invalid input gracefully. Which code snippet correctly uses try-catch to parse and prints the result or 'Invalid number'?

⚠ Common exam trap

Watch out — candidates often choose Option C (regex validation) thinking it's more efficient or 'cleaner', but they overlook that the regex `\d+` fails for negative numbers and other valid integer formats, while the try-catch approach in D is both correct and idiomatic for Java.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

try { int num = Integer.parseInt(input); System.out.println(num); } catch (NumberFormatException e) { System.out.println("Invalid number"); }

It uses `Integer.parseInt(input)` which throws a `NumberFormatException` for invalid input, and the catch block specifically catches that exception to print 'Invalid number'. This is the standard, idiomatic Java approach for parsing integers with error handling, as it directly addresses the requirement without unnecessary overhead or false positives.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • try { int num = Integer.valueOf(input).intValue(); System.out.println(num); } catch (Exception e) { System.out.println("Invalid number"); }

    Why it's wrong here

    Incorrect: Catching Exception is too broad; also valueOf throws NumberFormatException, but catching Exception is poor practice.

  • int num = Integer.parseInt(input); System.out.println(num);

    Why it's wrong here

    Incorrect: No exception handling; invalid input will cause an uncaught exception.

  • if (input.matches("\\d+")) { int num = Integer.parseInt(input); System.out.println(num); } else { System.out.println("Invalid number"); }

    Why it's wrong here

    Incorrect: Does not handle negative numbers or leading plus signs; also regex is less efficient.

  • try { int num = Integer.parseInt(input); System.out.println(num); } catch (NumberFormatException e) { System.out.println("Invalid number"); }

    Why this is correct

    Correct: Catches the specific exception and prints an error message.

About these practice questions

Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Last reviewed: Jun 25, 2026

Question Discussion

Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.

Loading comments…

Sign in to join the discussion.

This 1Z0-829 practice question is part of Courseiva's free Oracle certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the 1Z0-829 exam.