Core Java · interview question
Given the code snippet, what will be the value of 'totalDiscount' after execution? int[] discounts = {5, 10, 15}; int totalDiscount = 0; for (int i = 0; i <= discounts.length; i++) { totalDiscount += discounts[i]; }?
Multiple choiceHardchapter-1-curatedpremiumcore-javaloops-and-iteration
int[] discounts = {5, 10, 15}; int totalDiscount = 0; for (int i = 0; i <= discounts.length; i++) { totalDiscount += discounts[i]; }Answer and explanation
Correct answer
A. Error
Why
The loop condition 'i <= discounts.length' results in an 'ArrayIndexOutOfBoundsException' because it tries to access an index equal to 'discounts.length', which is out of range.
Test yourself on Core Java
A free test with instant, explained results. No account needed.
More Core Java questions
- In a console shopping cart application, why might you separate input handling from calculations?
- What happens if a subclass does not implement an abstract method from its superclass?
- Why would you choose to use a switch statement instead of multiple if-else statements for handling order status?
- Which part of the following code is responsible for avoiding an off-by-one error?
- Why can using overly complex methods in an e-commerce application become a problem in production code?
- How can a class implementing an interface with a default method call that method from within an overridden method?