Java 解释开关箱程序?
但我无法理解这个程序,因为所有的都是元音,这是怎么可能的?您缺少break语句:Java 解释开关箱程序?,java,Java,但我无法理解这个程序,因为所有的都是元音,这是怎么可能的?您缺少break语句: Number of vowels are : 7 Number of consonants are : 7 如果不提供break,默认情况也会被执行,因此它也会增加协变量。如果将其编写为 case 'a':case 'e':case 'i':case 'o':case 'u': vo++; break;//this is what you are missing default : 然后考虑对
Number of vowels are : 7
Number of consonants are : 7
如果不提供break,默认情况也会被执行,因此它也会增加协变量。如果将其编写为
case 'a':case 'e':case 'i':case 'o':case 'u':
vo++;
break;//this is what you are missing
default :
然后考虑对<代码>开关< /C>语句进行查找,以找到第一个匹配<代码> CASE < /代码>,然后继续运行,直到块结束或中断语句。
因此,代码中发生的事情是,您递增vo
,然后继续计算代码并递增co
。为了防止它这样做,您可能应该让它先点击break
语句。可能是
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
vo++;
default :
co++;
System.out.println("co");
break;
因为
开关的第一部分
没有中断
。您需要在vo++之后添加中断add break;顺便说一句,这就是为什么switch
语句可能是个坏主意,也是为什么如果(c[i]='a'| | c[i]='e'| | c[i]='i'| | c[i]='o'| | c[i]='u'{vo vo++}else{co++}那么语句可能会更好
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
vo++;
default :
co++;
System.out.println("co");
break;
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
vo++;
break;
default :
co++;
System.out.println("co");
break;