草庐IT

T_RETURN

全部标签

java - 在 Java 中完全切换枚举会产生 "Missing return statement"错误

假设,我们有switch语句,它完全涵盖了枚举参数的所有可能情况,并且也有null检查,不会因为"Missingreturnstatement"而被编译。enumFoo{ONE,TWO}intfooToInt(Foofoo){if(foo==null){thrownewNullPointerException();}switch(foo){caseONE:return1;caseTWO:return2;}}我知道,从default案例或枚举之后抛出异常,或者访问枚举元素而不是switch将解决问题。但我不明白这种行为的技术原因:显然,没有可能的执行分支不会导致return或throw。

java - 为什么 return 语句后不允许有额外的分号,而其他语句允许使用分号?

我在System.out.println的分号后面多加了一个分号:System.out.println();;这对Java编译器来说是合法的,所以我检查了其他语句,它们也都是合法的。所以当我搜索并找到这些链接时:WhydoesJavanotshowanerrorfordoublesemicolonattheendofastatement?Compilerdoesn'tcomplainwhenIendedalinewithtwosemicolons.Why?Whenwouldyouputasemicolonafteramethodclosingbrace?Whydoescodewiths

Java - 错误 : return type is incompatible

我正在学习Java。我试图运行代码,但出现此错误:returntypeisincompatible。显示错误的部分代码。classA{publicvoideat(){}}classBextendsA{publicbooleaneat(){}}为什么会这样? 最佳答案 这是因为我们不能在具有相同名称但返回类型不同的类中拥有两个方法。子类不能声明一个与父类中已经存在的方法具有相同名称但返回类型不同的方法。但是,子类可以声明一个与父类(superclass)具有相同签名的方法。我们称之为“覆盖”。你需要有这个,classA{publicv

java - `return value' 来自 Java 中的构造函数异常?

看看下面的代码片段:Aa=nulltry{a=newA();}finally{a.foo();//Whathappensatthispoint?}假设A的构造函数抛出运行时异常。在标记的行,我是否总是保证会得到NullPointerException,或者foo()将在半构造的实例上被调用? 最佳答案 tryblock中的代码包含两个不同的操作:创建一个新的A实例。将新实例分配给名为a的变量。如果第1步抛出异常,第2步将不会执行。因此,您将始终得到一个NullPointerException。

Java && ||在 RETURN 语句中?

我正在查看一些Java算法示例,我在递归方法中遇到了这段代码:booleansubTree(TreeNodet1,TreeNodet2){if(t1==null){returnfalse;}if(t1.value==t2.value){if(treeMatch(t1,t2))returntrue;;}return(subTree(t1.left,t2)||subTree(t1.right,t2));}不知道(也从未见过)||之前在return语句中使用过,更不用说递归语句了,真的让我很困惑。我将代码复制到Eclipse中以查看它是否有效。然后我更换了||与&&和Eclipse似乎并没有

java - 在 jpa 标准中, "in case there is at least 1 row return true"

我正在尝试使用JPA(eclipselink)中的标准api创建以下句子,很简单,询问某个类别中是否存在某个用户我想要的句子:SELECTCASEWHENEXISTS(SELECT*FROMuserWHEREcategory=?)THENtrueELSEfalseENDbind=>[10]我尝试使用这段代码:CriteriaBuildercriteriaBuilder=entityManager.getCriteriaBuilder();CriteriaQuerycriteriaQuery=criteriaBuilder.createQuery(Boolean.class);Rootr

java - 我应该在 javadoc 中写多个 @return 标签吗

假设我有一个返回字符串数组的java方法。在方法内部,我有多个返回语句,具体取决于条件。publicString[]userLogIn(){String[]success={"You","are","the","king"};String[]errorMsg={"You","are","nothing"};doubleran=Math.random();if(ran这个例子可能太天真了。但我的观点是,我应该/可以使用多个@return标签,比如@returnthisarray如果满足条件1@return如果满足条件2,则返回该数组@returnnull如果满足条件3?我经常写一个@re

java - 递归 - 为什么要使用 return 语句

我正在学习递归,下面是一个我正在跟踪以更好地理解它的示例publicstaticvoidmain(String[]args){newTestRecursion().strRecur("abc");}publicvoidstrRecur(Strings){if(s.length()以下是我目前的理解。-在第一次调用strRecur("abc")时,该方法被添加到执行堆栈。由于带有参数“abc*”的递归调用,它在暂停之前打印“abc”。第二次调用“abc*”,将方法strRecur(abc*)压入堆栈并向控制台打印“abc*”。第三次调用“abc**”,将方法strRecur(abc**)

java - Runtime.availableProcessors : what is it going to return?

Java1.6中Runtime.availableProcessors()的javadoc非常不具体。是只看硬件配置,还是看负载?它是否足够聪明,不会被超线程愚弄?它是否通过linuxtaskset命令遵守一组有限的处理器?我可以添加一个我自己的数据点:在一台有12个内核和超线程的计算机上,Runtime.availableProcessors()确实返回24,这不是决定尝试运行多少线程的好数字。这台机器显然没有完全闲置,所以它也不能以任何有效的方式查看负载。 最佳答案 在Windows上,GetSystemInfo使用了返回的SY

java - 使用 GROUP BY 和 RETURN ENTITY LIST 的 Hibernate 标准

我正在尝试在我的条件中使用GROUPBY。我需要这样做:SELECTbFROMBookbGROUPBYvolumeCode;我有以下代码:Criteriac=s.createCriteria(Book.class);c.setProjection(Projections.projectionList().add(Projections.groupProperty("volumeCode")));Listresult=c.list();但此条件仅返回volumeCode(字符串列表)。我需要获取Book的列表。所以我尝试使用变形金刚:Criteriac=s.createCriteria(