草庐IT

browser_options

全部标签

java - 如何抑制 "Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar"消息

我使用的是Ubuntu15.04和Java1.7。更新到15.04后,每当我键入任何Java命令时,我都会收到如下消息:PickedupJAVA_TOOL_OPTIONS:-javaagent:/usr/share/java/jayatanaag.jar例如:hduser@ubuntu:~$java-versionPickedupJAVA_TOOL_OPTIONS:-javaagent:/usr/share/java/jayatanaag.jarjavaversion"1.7.0_21"Java(TM)SERuntimeEnvironment(build1.7.0_21-b11)Jav

java - 使用 Java 8 Optional 实现安全的 Map 遍历

我有Map>myMap在我的Java8类(class)中。我需要导航到像myMap['keyA']['keyB']这样的叶字符串,返回null如果'keyA'或'keyB'在相关map中不存在。在groovy中我会使用myMap?.keyA?.keyB并完成它。我了解Java8的Optional将类似的行为带入java。有没有办法使用这种新行为来简洁地模仿groovy功能​​?如果不是,是否有另一种简洁的方法可以在Java8中实现这种行为,或者我是否仍然坚持使用复杂的过程代码? 最佳答案 StringvalueOrNull=Opti

java - JAVA_OPTS 和 JAVA_TOOL_OPTIONS 之间的区别?

什么时候应该使用这些环境变量? 最佳答案 JAVA_TOOL_OPTIONS被一些JDK工具读取,但适用性有限。JAVA_OPTS是ApacheTomcat和其他一些应用程序使用的约定,但不是由Sun/Oracle、AFAIK发布的任何JDK工具直接读取。来自:https://forums.oracle.com/forums/thread.jspa?messageID=6438415JAVA_OPTSisnotanenvironmentvariablethatthejavaexecutablewillrecognizeonit'so

java - 仅当 Optional 存在时才解包

所以目前我有Stringuri=website.getUri();OptionalpageDetail=webClient.getDetailOfUri(uri);StringdisplayName;Stringdescription;if(pageDetail.isPresent()){displayName=pageDetail.get().getName();description=pageDetail.get().getDescription();}else{displayName=uri;description="";}我调用getDetailOfUri(uri)方法,返回O

JavaFx 8 : open a link in a browser without reference to Application

有超链接。单击时,我希望在外部浏览器中打开一个链接。网上引用的常用方法好像是:finalHyperlinkhyperlink=newHyperlink("http://www.google.com");hyperlink.setOnAction(t->{application.getHostServices().showDocument(hyperlink.getText());});但是我没有对Application的引用。链接是从Dialog打开的,而Dialog是从Controller打开的,而Controller通过fxml文件打开,因此获取对Application对象的引用会

java - 在单行中调用 Optional#isPresent() 被报告为未调用

我运行SonarQube来检查我的代码,我发现了一个我不理解所报告错误的情况。我的代码是:privatestaticfinalintBASE_ID=100_000_000;privatebooleanisValidId(Idid){returnid.asInteger().isPresent()&&id.asInteger().get()>=BASE_ID;}方法asInteger返回Optional我从sonarqube得到的错误是Call"Optional#isPresent()"beforeaccessingthevalue.在返回行中。我知道代码可以作为if的第二部分如果第一个

java - 为什么 Java Optionals 是不可变的?

我想了解为什么Java8Optionals被设计成不可变的。它只是为了线程安全吗? 最佳答案 Optionals用于传递东西。如果您将某样东西送给某人然后更改其内容,他们会非常惊讶,而且不是很好。 关于java-为什么JavaOptionals是不可变的?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/34553034/

java - 如何在 Java 8 中用定界符连接两个 Optional<String>

我有两个可选字符串,name1和name2。我想加入这两个结果也是一个可选的:如果其中一个非空,则结果应该是非空名称。如果两者都不为空,我希望结果与分隔符AND连接。如果两者都为空,则结果应该为空可选我的尝试:StringBuildersb=newStringBuilder();name1.ifPresent(sb::append);name2.ifPresent(s->{if(sb.length()>0){sb.append("AND");}sb.append(s);}OptionaljoinedOpt=Optional.ofNullable(Strings.emptyToNull(

java - Java 8 Optional中flatMap的签名

在oracledocs,它似乎是OptionalflatMap(Function>mapper)对于mapper作为Function,它使参数逆变但不使返回类型协变。我想知道mapper是否可以(应该)是Function>或Function>? 最佳答案 首先,IMO,因为U绑定(bind)到方法本身而不是类Optional还有Optional是final,当前签名应该可以正常工作。如果上述两个条件中的任何一个不成立,则可以应用更改。感谢link由@MalteHartwig提供。让我总结一下这个特定问题的答案。很明显,如果返回类型需

java - 使用 Optional.orElseThrow 在 Stream 中抛出 RuntimeException

下面的代码工作正常:Stream.of("key1","key2").map(key->{SomeObjectfoo=service.find(key);if(foo==null){thrownewRuntimeException("Noentityfoundwithkey:"+key);}returnfoo;})//...但是,当我使用Optional中的orElseThrow时:Stream.of("key1","key2").map(key->Optional.ofNullable(someService.find(key)).orElseThrow(()->newRuntime