我对任何语言的答案感到满意,但我最终想要用Java解答.(Java 8+很好.不仅限于Java 8.我试图修复标签.)
如果我有两个Optional<Integer>
值,我如何简洁地计算等价物a || b
,意思是:a
如果它被定义; 否则b
,如果已定义; 否则empty()
?
Optional<Integer> a = ...;
Optional<Integer> b = ...;
Optional<Integer> aOrB = a || b; // How to write this in Java 8+?
Run Code Online (Sandbox Code Playgroud)
我知道我可以写a.orElse(12)
,但如果默认的"值"也是Optional
怎么办?
显然,在C#中,运营商??
做了我想要的.
我想尽可能接近"单元测试"Nginx重写规则.这样做有多接近?有没有办法在不运行整个Web服务器的情况下运行请求重写模块?我可以将Nginx服务器嵌入到运行Ruby或Python的进程中,或者如果必须,还可以嵌入Java吗?你能想到什么技巧?
我希望我错过了一些愚蠢的东西。
我正在尝试使用 OpenShift 免费托管服务上的 PHP 5.4 墨盒在 Apache 2.2 上使用 .htaccess 重定向 URL。
这与 URI /permalink/a123 匹配(注意规则的过滤器模式中缺少前导斜杠):
RewriteEngine On
RewriteRule permalink/a.*$ /permalink/b [R=301,L]
Run Code Online (Sandbox Code Playgroud)
这与 URI /permalink/a123 不匹配(注意规则过滤模式中的前导斜杠):
RewriteEngine On
RewriteRule /permalink/a.*$ /permalink/b [R=301,L]
Run Code Online (Sandbox Code Playgroud)
那么我有什么愚蠢的事情错了?
谢谢。