由于我有多个String
案件应该以相同的方式处理,因此我尝试:
switch(str) {
// compiler error
case "apple", "orange", "pieapple":
handleFruit();
break;
}
但是我得到一个编译器错误。
在Java中,我是否应该逐个调用相同的函数:
switch(str) {
case "apple":
handleFruit();
break;
// repeat above thing for each fruit
...
}
有没有更简单的风格?
您必须case
为每个String 使用关键字,如下所示:
switch (str) {
//which mean if String equals to
case "apple": // apple
case "orange": // or orange
case "pieapple": // or pieapple
handleFruit();
break;
}
编辑02/05/2019
从Java 12开始,提出了新的switch case语法,因此要解决此问题,方法如下:
switch (str) {
case "apple", "orange", "pieapple" -> handleFruit();
}
现在,您可以选择多个选项,并用逗号分隔,一个箭头->
然后是您要执行的操作。
另一种语法是:
考虑到每种情况都返回一个值,并且您想在一个变量中设置值,假设handleFruit()
返回一个String
旧语法应为:
String result; // <-------------------------- declare
switch (str) {
//which mean if String equals to
case "apple": // apple
case "orange": // or orange
case "pieapple": // or pieapple
result = handleFruit(); // <----- then assign
break;
}
现在使用Java 12,您可以像这样:
String result = switch (str) { // <----------- declare and assign in one shot
case "apple", "orange", "pieapple" -> handleFruit();
}
不错的语法
操作步骤: 菜单栏: Edit —> Toggle Case 快捷键: Mac: Shift + Command + U Windows/Linux: Ctrl + Shift + U
本文向大家介绍写一个把字符串大小写切换的方法相关面试题,主要包含被问及写一个把字符串大小写切换的方法时的应答技巧和注意事项,需要的朋友参考一下 var reversal = function(str){ var newStr = ''; if(Object.prototype.toString.call(str).slice(8,-1) !== 'String'){ alert("请填写字符串")
问题内容: 考虑以下代码: 这是相当难看,我想用开关的情况下,但我该如何使用与变量? 谢谢 问题答案: 您可以使用枚举来做所有事情。我为前两个值创建了示例,其余内容可以继续。 因此,您可以致电:
问题内容: 我正在使用Java 7的新功能进行POC。我有在switch语句中使用String的代码,它可以工作。我也想使其不区分大小写。有没有一种方法可以在String上使用ignoreCase签出? 问题答案: 不,但是您可以打开。所以: 在我们挑剔的时候,您最好在英语语言环境中使用大写字母,以避免出现土耳其语问题
操作步骤: 菜单栏: Edit —> Toggle Case 快捷键: Mac: Shift + Command + U Windows/Linux: Ctrl + Shift + U
我想让用户选择进行区分大小写或不区分大小写的搜索。 我的想法是使用区分大小写的分析器对数据进行索引,然后根据用户输入使用区分大小写或不区分大小写的分析器进行搜索。 因此,我创建了区分大小写的分析器,下面是我的简单代码: 对于索引,我使用了以下方法: 对于搜索,我使用: 当我对此感到厌倦时,敏感的案例起了作用,但不敏感的案例没有起作用。 经过更多的研究,我发现使用区分大小写的分析器和低关注度的查询是