草庐IT

boolean-logic

全部标签

java - 使用 ANTLR 的嵌套 boolean 表达式解析器

我正在尝试解析嵌套boolean表达式并分别获取表达式中的各个条件。例如,如果输入字符串是:(A=aORB=bORC=cAND((D=dANDE=e)OR(F=fANDG=g)))我想以正确的顺序获取条件。即,D=d和E=e或者F=f和G=g和A=a或B=b或C=c我正在使用ANTLR4来解析输入文本,这是我的语法:grammarSimpleBoolean;rule_set:nestedCondition*EOF;AND:'AND';OR:'OR';NOT:'NOT';TRUE:'TRUE';FALSE:'FALSE';GT:'>';GE:'>=';LT:'skip;nestedCon

带有 boolean 值的 java.lang.NullPointerException

我根据另一个问题写了一个非常简单的代码,这里是:它抛出一个错误java.lang.NullPointerExceptionline5and17我不知道我做错了什么。publicclassMain{publicstaticStringbool(Booleanparam){if(param==true){(line5)return"a";}elseif(param==false){return"b";}return"c";}publicstaticvoidmain(String[]args){System.out.println(bool(true));System.out.println

java - 使用枚举与 boolean 值?

这可能最初看起来很普通,但实际上,我实际上是在决定我需要使用什么。我目前正在处理的工作涉及就业申请,这些申请需要在某些时候标记为有效或无效。提交申请后,它将默认为有效。由于某些原因,它稍后可能会被设置为Inactive。它只能是其中之一,并且永远不会null(以防这会改变任何内容)。我将它与Java+Hibernate+PostgresSQL一起使用,以防这也有任何不同。我的第一直觉是使用Boolean作为我的解决方案,以便它真正充当标志,但我有同事建议使用enums或ints更多的是一种状态而不是一个标志。我已经使用上述所有解决方案解决了此类问题,而且它们似乎对彼此来说都有些透明。有

java - boolean 引用为空

谁能解释为什么这段代码会产生以下输出?@TestpublicvoidtestBooleanArray(){Boolean[]ab=newBoolean[]{a,b};a=newBoolean(true);b=newBoolean(false);for(Booleanx:ab){System.out.println(x);}}结果:nullnull如果数组ab不包含指向对象a和对象b的指针,因此输出:truefalse 最佳答案 a=newBoolean(true);b=newBoolean(false);这不会改变a和b指向的对象(

java - 从属性文件中获取 boolean 值

我有一个包含一些boolean值的属性文件。据我所知,java.util.properties没有像getBoolean这样的东西。是否有任何其他Java库可以做到这一点?或者也许还有另一种方法,除了doAction="true".equals(yourProperties.getProperty("doaction")); 最佳答案 如何使用Boolean.parseBoolean()进行转换,像这样:Booleanfoo=Boolean.parseBoolean(yourProperties.getProperty("foo")

java - 哪个是在 lucene 中索引 boolean 值的最佳选择?

在lucene中索引一个boolean值(true/false)(不需要存储)我想获得更多的磁盘空间使用率和更高的搜索性能doc.add(newField("boolean","true",Field.Store.NO,Field.Index.NOT_ANALYZED_NO_NORMS));//ordoc.add(newField("boolean","1",Field.Store.NO,Field.Index.NOT_ANALYZED_NO_NORMS));//ordoc.add(newNumericField("boolean",Integer.MAX_VALUE,Field.St

java - 在java中从 boolean 值转换为字节

我需要将字节值设置为方法参数。我有boolean变量isGenerated,它确定要在此方法中执行的逻辑。但是我可以直接将boolean值作为字节参数传递,这是不允许的,也不能在java中进行转换。所以我现在的解决方案是这样的:myObj.setIsVisible(isGenerated?(byte)1:(byte)0);但这对我来说似乎很奇怪。也许存在一些更好的解决方案来做到这一点? 最佳答案 您的解决方案是正确的。如果您愿意,可以通过以下方式避免一次转换:myObj.setIsVisible((byte)(isGenerated

java - 如何绑定(bind)反向 boolean 值,JavaFX

我的目标是绑定(bind)这两个属性,例如当checkbox被选中时paneWithControls被启用,反之亦然。CheckBoxcheckbox=newCheckBox("clickme");PanepaneWithControls=newPane();checkbox.selectedProperty().bindBidirectional(paneWithControls.disableProperty());然而,使用此代码却与我想要的相反。我需要类似反向boolean绑定(bind)的东西。是否有可能或者我必须制定一种方法来处理它? 最佳答案

java: boolean instanceOf boolean 值?

我有点困惑:我有一个函数,它接受一个对象作为参数。但是,如果我只是传递一个原语,甚至将boolean原语识别为boolean对象,编译器也不会提示。为什么呢?publicStringtest(Objectvalue){if(!(valueinstanceofBoolean))return"invalid";if(((Boolean)value).booleanValue()==true)return"yes";if(((Boolean)value).booleanValue()==false)return"no";return"dunno";}Stringresult=test(tru

Java:println 中的 boolean 值( boolean 值? "print true":"print false")

这个问题在这里已经有了答案:WhatistheJava?:operatorcalledandwhatdoesitdo?(17个答案)关闭9年前。我遇到了这个语法:System.out.println(boolean_variable?"printtrue":"printfalse");这个带有两个点的语法是什么:叫什么?我在哪里可以找到相关信息?它只适用于boolean值还是以其他不同的方式实现?