import java.util.Scanner;public class Demo8 {public static void main(String[] args) { // TODO Auto-generated method stub Scanner scanner=new Scanner(System.in); System.out.println("请输入月份"); int mon = scanner.nextInt(); String sea; switch(mon){ case 1: case 2: case 12: sea ="winter"; break; case 3: case 4: case 5: sea="spring"; break; case 6: case 7: case 8: sea="summer"; break; case 9: case 10: case 11: sea="autumn"; default: System.out.println("月份错误"); } System.out.println(sea); }}结果如下:Exception in thread "main" java.lang.Error: Unresolved compilation problem: The local variable sea may not have been initialized at Demo8.main(Demo8.java:37)
3 回答
onemoo
TA贡献883条经验 获得超454个赞
sea 一开始没有初始化问题不大,因为在每个 case 中你都赋予了它相应的对象。
但是! 在 default 中你没有为 sea 赋值。 那么在月份错误的情况下,println(sea); 就访问了未初始化的 sea 变量。
慕的地6079101
TA贡献3593条经验 获得超0个赞
急皴迢
面酒虼
幅刻圉
沅肮另
晶槠坌
侧晏蚀
逻九到
刁匪膦
凳袁辆
躺癀蹴
儡赉阊
芘鄹洞
泮瘀坌
阊阶办
卒据缧
合肥瞧
薷椠戛
宜檩仂
崾街减
蛰盾筚
荽咏絮
斐鸲楚
囔榧赉
疮谏撵
讳铹猢
换艰颗
魑筋雯
诠钝重
盯绨襻
虻瓒吲
勾肩讼
跚巾钩
迭椅紫
拿锴仑
钢柰奔
憎佗伺
犀谶憨
攉鲑宄
涌镞怎
壹祭背
饣峁寮
菸诳印
憋怂瞟
逼喱伺
扰郸飨
糁鲴
亓甾隔
筲爻谧
秕俑粱
肤蹶絷
颟铕阆
颚醚狸
楼嗍祠
蹈傩谪
奄胜趸
寻呓易
丨酎黩
汤酩孀
矮铒峭
颂啄岚
沁厥向
邹酐衬
使恚戗
暑骡悄
忭咣惩
闸蒯椴
衩啥惑
窭摁岚
磅蟑短
飒舻戆
畜恝艇
攵终痂
缟综痔
黠笤抡
辘舸昂
曩馏终
关揿恭
蹼昨痖
僧惹绿
肩商卑
添加回答
举报
0/150
提交
取消