草庐IT

static_switch

全部标签

java - 用于 Java 中 switch 的 McCabe Cyclomatic Complexity

我正在使用13个case的switch语句,每个case只有一行返回值。McCabe将其涂成红色。有没有更简单的方法来编写一个大的switch语句?阅读起来似乎并不复杂,但我不喜欢默认设置变成红色。如果其他人在我的代码上使用相同的工具并看到红色的东西,他们可能会认为我很愚蠢:-)编辑:我将不同的SQL类型映射到我自己的更抽象的类型,因此减少了类型的总数。caseTypes.TIME:returnAbstractDataType.TIME;caseTypes.TIMESTAMP:returnAbstractDataType.TIME;caseTypes.DATE:returnAbstra

java - Switch 语句给出不兼容的类型错误

我正在尝试编译,但出现此错误:enigma/Rotor.java:30:incompatibletypesfound:java.lang.Stringrequired:intswitch(name){1error为什么会出现此错误?我如何解决它?它在包装中,我似乎无法弄清楚。这是代码:Stringlabel;Rotor(){;}Rotor(Stringname){switch(name){case"B":conversion_chart=B;break;case"C":conversion_chart=C;break;case"I":conversion_chart=I;notch=N

Java switch语句处理两个变量?

我正在寻找一种使用单个开关处理两个字符串的方法,我认为这在Java中是不可能的。这里是一些伪代码,我想只用一个开关来实现。ints1Value=0;ints2Value=0;Strings1="a";Strings2="g";switch(s1||s2){case"a":s1value=0;s2value=0;break;case"b":s1value=1;s2value=1;break;case"c":s1value=2;s2value=2;break;case"d":s1value=3;s2value=3;break;case"e":s1value=4;s2value=4;brea

java - 使用 switch 语句将字符串与枚举进行比较

我正在用Java制作(我自己的)轮盘赌,玩家可以下注的一种类型是选择将要滚动的颜色。(偶数为黑色,奇数为红色)。有没有一种方法可以使用switch语句将字符串与枚举进行比较?privateenumcolors{red,black};privateStringcolorGuess;privatebooleancolorVerify=false;publicvoidgetColorGuess(){do{Scannerin=newScanner(System.in);colorGuess=in.nextLine();switch(colors){casered:colorVerify=tru

Java 8,如何使用流实现 switch 语句?

我有一个文本文件imgui.ini包含:[Debug]Pos=7,79Size=507,392Collapsed=0[ImGuiDemo]Pos=320,5Size=550,680Collapsed=0对于每个“元素”,我总是有Pos、Size和Collapsed,我需要阅读它们。如果可能的话,我想使用java8流。是否可以模拟switch语句的行为?try(Streamstream=Files.lines(Paths.get(context.io.iniFilename))){.../*switch(string){case"Pos":settings.pos=value;break

java - 在枚举的 Java switch 语句中,为什么在每种情况下限定我的值时都会出现编译错误?

我在Java中有一个switch语句,在一个让我们调用IMyInterface.MyEnum的枚举上我的每个案例陈述都有以下形式:IMyInterface.MyEnum.MyValue,(尽管如果我导入的话我可以删除IMyInterface)。但是,编译器(Java6)会抛出一个错误:“合格的case标签IMyInterface.MyEnum.MyValue必须替换为未合格的枚举常量MyValue”。我显然可以做到这一点,但对于我来说,我不明白这个错误的目的是什么。显然,如果编译器可以处理实际值,它应该能够像处理常量一样处理完全限定名。事实上,我会假设编译器将常量转换为完全限定名称。那

java - Java 中的并发性 : synchronized static methods

我想了解如何在Java中对静态方法进行锁定。假设我有以下类(class):classFoo{privatestaticintbar=0;publicstaticsynchronizedvoidinc(){bar++;}publicsynchronizedintget(){returnbar;}据我了解,当我调用f.get()时,线程会获取对象f上的锁,而当我调用Foo.inc()线程获取类Foo上的锁。我的问题是这两个调用如何相互同步?调用静态方法是否也会获取所有实例化的锁,或者反过来(这似乎更合理)?编辑:我的问题不完全是staticsynchronized如何工作,而是静态和非静态

springframework.web.servlet.resource.NoResourceFoundException: No static resource favicon.ico.

springboot单体项目已请求接口就报这个错误,问题是springboot没有找到favicon.ico图片资源,所以就抛出了这个异常,很鸡肋,不处理看着难受,处理的话又找不到原因。1、随便找一张图片,命名为favicon.ico2、在项目resources创建static文件夹,把favicon.ico放到文件夹里面。3、clearmaven,重新启动项目。这里有个小坑,需要彻底地重新加载资源,很多时候是放进去试一下,好像不不行,就认为这个方法不行(我就是这样)

java - 带有 boolean 值的 Switch 语句不起作用?

为什么我的编译器告诉我:不兼容的类型:必需:boolean值找到:Int案例0和案例1例如:publicvoidtest(booleanisOn){switch(isOn){case0:if(isOn){System.out.println("itson");}break;case1:if(!isOn){System.out.println("itsoff");}break;default:System.out.println("Idon'tknow!");}驱动类:Clubme=newClub();me.test(true); 最佳答案

java - 为什么要使 private static final Lists/Sets/Maps 不可修改?

我刚刚阅读了一位更有经验的程序员编写的一些代码,我遇到了以下问题:publicclassConsoleFormatterextendsFormatter{privatestaticfinalMapPREFIXES;static{Mapprefixes=newHashMap();prefixes.put(Level.CONFIG,"[config]");prefixes.put(Level.FINE,"[debug]");prefixes.put(Level.FINER,"[debug]");prefixes.put(Level.FINEST,"[trace]");prefixes.pu