Java – why must variables be initialized?
•
Java
Here, I try to get the output month by entering the number of months, but why do I make a mistake
Why must monthstring be initialized?
import java.util.Scanner; public class SwitchClass { public static void main(String[]args) { Scanner input = new Scanner(system.in); System.out.printf(" when did u born ? "); int monthNumber = input.nextInt(); String monthString ; switch (monthNumber) { case 1: monthString = "January "; break; case 2: monthString = "February "; break; case 3: monthString = "March "; break; case 4: monthString = "April "; break; case 5: monthString = "May"; break; case 6: monthString = "June"; break; case 7: monthString = "July"; break; case 8: monthString = "August"; break; case 9: monthString = "September"; break; case 10: monthString = "October"; break; case 11: monthString = "November"; break; case 12: monthString = "December"; break; } System.out.println(monthString); } }
Solution
What if the monthnumber is not between 1 and 12? In this case, monthstring will not be initialized You should give it some default values when declaring:
String monthString = null; // or ""
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码