草庐IT

packed-switch

全部标签

java - 如何在java中的while循环中设置switch语句

我想在while循环中做一个switch,在每个switch语句的中断处,while循环停止并请求输入,如F、R、C、Q。下面的语句有效,但语句不会中断。请帮忙publicstaticvoidmain(String[]args)throwsIOException{//startbothwith1pointintgoodTotal=50;intmonTotal=50;//inputswitchstatementwhile(goodTotal>0&&monTotal>0){System.out.print("Typealetter:");System.out.println("\n");S

java - 如何在 switch 语句中使用大于或等于

使用switch语句检查变量是否大于某个数字的最佳方法是什么?或者你推荐使用if-else?我找到了这样一个例子:inti;if(var1>var2)i=1;if(var1=var2i=0;if(var1关于在switch语句中使用“大于或等于”,您能告诉初学者什么? 最佳答案 不确定这是否是您要问的,但您可以这样做:intvar1;intvar2;intsignum=Long.signum((long)var1-var2);switch(signum){case-1:break;case0:break;case1:break;}

java - 更好的 : switch-case or if-else?

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:If/Elsevs.Switch我这里有两段代码,我只是想问一下,在可写性(易于编写代码)和可读性(易于理解代码)方面,两者中哪一个更好。开关盒:importjava.io.*;publicclassQuarter{publicstaticvoidmain(String[]args){intday;Stringinput="";BufferedReaderin=newBufferedReader(newInputStreamReader(System.in));System.out.print("Inputa

java - 在一个switch语句中,为什么所有的case都被执行了?

我有这个代码与switch我从这个post得到的声明,它工作得很好:StringgetOrdinal(finalintday){if(day>=11&&day但是,如果我将其更改为类似以下内容,它就会中断,因为除了case1之外的所有情况。被执行:staticStringgetOrdinal(finalintday){StringBuilderordinalBuilder=newStringBuilder();ordinalBuilder.append("");if(day>=11&&day");returnordinalBuilder.toString();}这会打印出2ndrdth

使用 class.getSimpleName() 的 Java switch 语句给出 Constant express required 错误

我正在尝试使用class.getSimpleName()来表达开关,但是它给了我一个错误:Constantexpressrequired我看到的答案建议将表达式变量声明更改为具有作为编译时常量表达式的初始值设定项。但是,在这种情况下这是不可能的。有没有一种方法可以使用class.getSimpleName()进行切换而不必对类名进行硬编码?示例代码publicclassClassA{publicstaticfinalStringTAG=ClassA.class.getSimpleName();...}publicclassClassB{publicstaticfinalStringTA

java - 可以在 java 中使用 switch(java.lang.Object) 吗?

我的应用程序需要具有String类型的switchcase语句。我需要这样的东西:Objectlist1="list1";Objectlist2="list2";Objectlist3="list3";Objectoption="list1";switch(option){caselist1://Dosomethingcaselist2://Dosomethingcaselist3://Dosomethingdefault://Dosomething}有可能吗?EDIT:Isitbettertouseswitchcasefornconditionsrathergoingwithifan

【Python】Struct 库之 pack 和 unpack 详解

1.官网解析首先是官网对于pack、unpack、calcsize以及FormatStrings的描述1.1pack、unpack、calcsizestruct.pack返回一个bytes对象,其中包含根据格式字符串format打包的值v1,v2,…。参数必须与格式所要求的值完全匹配。struct.unpack根据格式字符串format从缓冲区buffer(假设由pack(format,…)打包)中解包。返回一个元组,即使它只包含一个元素。缓冲区的字节大小必须与格式所需的大小匹配,如calcsize()所反映的那样。struct.calcsize返回与格式字符串format对应的结构体(以及由

C#系列之switch语句

今天,我们将对于switch语句做一个较为简单的了解。在日后的Unity内部C#脚本的使用做好充分的准备。我们将通过一些实例展开今天的内容。1.基本语法switch(变量){//变量==常量,执行case和break之间的代码case常量:     满足条件之下的代码逻辑;    break;case常量:     满足条件之下的代码逻辑;    break;default:     如果上面case的条件不满足就会执行default中的代码。     break;}注意:此处default可以省略!2.可自定义常量charc='A';//1.必须初始化2.不能修改constcharc2='A

java - 在 switch-case 中使用枚举值的字符串表示

为什么不能在switchcase中将枚举值用作字符串?(或者这有什么问题:)Stringargument;switch(argument){caseMyEnum.VALUE1.toString()://Isn'tthisequalto"VALUE1"?//somethingbreak;caseMyEnum.VALUE2.toString()://somethingelsebreak; 最佳答案 您只能使用在编译时已知的字符串。编译器无法确定该表达式的结果。也许你可以试试Stringargument=...switch(MyEnum.

java string.contains 在 switch 语句中

如何将以下代码转换为switch语句?Stringx="userinput";if(x.contains("A")){//conditionA;}elseif(x.contains("B")){//conditionB;}elseif(x.contains("C")){//conditionC;}else{//conditionD;} 最佳答案 有一个方法,但不是使用contains。你需要一个正则表达式。finalMatcherm=Pattern.compile("[ABCD]").matcher("aoeuaAaoe");if(