小编Rey*_*les的帖子

在Java中,"1/0"是一个常量表达式吗?

据我所知,Java 8 JLS表达式(1/0)被认为是一个常量表达式,但是当我尝试使用OpenJDK 8编译以下程序时出现错误

public class Switch {
    public static void main(String[] args) {
        switch(42) {
            case (1/0):
                return;
            default:
                return;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

错误说(1/0)不是一个常量表达式

Switch.java:4: error: constant expression required
            case (1/0):
                 ^
1 error
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?或者它是OpenJDK 8中的错误?

java openjdk compiler-errors jls java-8

33
推荐指数
2
解决办法
1412
查看次数

ocaml漂亮的打印机(代码格式化程序)

我正在为ocaml寻找代码格式化程序或漂亮的打印机.像编程语言的gofmt之类的东西.它应该最好保留评论.

我正在纠正手工操作,并且一些代码的格式化使得它很难阅读.

ocaml

15
推荐指数
1
解决办法
1659
查看次数

NGINX服务没有源的预压缩索引文件

我发现了一个有趣的问题.

我正在尝试使用NGINX的gzip_static模块提供一些gzip压缩文件(我知道这方面的缺点).这意味着您可以在将使用transfer-encoding:gzip提供服务器的服务器上使用gzip压缩文件.例如,如果有一个文件/foo.html.gz,则会对带有content-encoding:text/html的压缩文件提供/foo.html请求.

虽然这通常有效,但事实证明,当在目录中查找索引文件时,不考虑gzip压缩版本.

GET /index.html
200

GET /
403
Run Code Online (Sandbox Code Playgroud)

我想知道是否有人知道如何解决这个问题.我尝试index.html.gz在索引文件中设置,但它作为gzip文件而不是gzip编码的html文件.

gzip nginx

7
推荐指数
1
解决办法
1270
查看次数

格式化 try-with-resources 的代码约定是什么?

我想知道用资源格式化 try 块的代码约定是什么,尤其是多个资源。目前我将每个资源放在自己的行上,以分号结尾,并使用 vim 的缩进级别(2 个制表符),如下所示:

try (
        InputStream in1 = ...;
        InputStream in2 = ...;
    ) {
    ...;
}
Run Code Online (Sandbox Code Playgroud)

我还看到人们使用分号作为分隔符而不是终止符,并且只在每个资源之间使用换行符,如下所示:

try (InputStream in1 = ...;
    InputStream in2 = ...) {
    ...;
}
Run Code Online (Sandbox Code Playgroud)

什么是公约?

java readability indentation java-7 try-with-resources

3
推荐指数
1
解决办法
1896
查看次数

xsl从所有节点中删除注释

我正在使用xsl脚本从xml的所有部分删除注释.它实际上删除了父节点中的注释,但没有删除其他内部节点中的注释.

[编辑]

更新问题.我的要求是从整个XML文档中删除所有注释.

xml xslt

2
推荐指数
1
解决办法
2503
查看次数

同步返回一个值并在dart中等待

我试图理解在Dart中使用async和await.不知何故,我在某些方法中返回值时遇到问题.

请考虑以下代码

Future<int> getMrn() async {
  var mrnRef = await firebaseClient.child('mrn');

  DataSnapshot ss;
  StreamSubscription<Event> onValueSubscription = await mrnRef.onValue
      .listen((event) {
    ss = event.snapshot;

    return ss.val();
  });

  //return Future<int> ss.val();
}
Run Code Online (Sandbox Code Playgroud)

mrnint应该通过getMrn方法返回的类型.但是每次返回都会ss.val()返回null.似乎ss = event.snapshot在最后返回的值中没有看到

这样做的正确方法是什么.谢谢

dart

2
推荐指数
1
解决办法
988
查看次数

Java - 日期无效时抛出错误

我有以下代码:

SimpleDateFormat formatDDMMYYY = new SimpleDateFormat("dd/MM/yyyy");
Calendar quotationDay = Calendar.getInstance();
try {
    quotationDay.setTime(formatDDMMYYY.parse("06/13/2015"));
} catch (ParseException e) {
    throw new RuntimeException("Quotation date is in incorrect format.");
}
Run Code Online (Sandbox Code Playgroud)

日期"06/13/2015"不正确,因为没有第13个月.Java会在2016年自动将其解析到下个月.有什么办法可以防止这种情况发生并抛出异常吗?

java date-parsing

1
推荐指数
1
解决办法
450
查看次数