Pascal的集合类型为Java模拟

时间:2011-12-19 17:26:44

标签: java pascal

Pascal具有集类型的功能。它允许这样的好构造:

if i in [5..10] then
  ...

Java中有类似的东西吗?

我只是出现了这种不接受间隔的丑陋构造:

if ((new HashSet<Integer>(Arrays.asList(new Integer[]{5,6,7,8,9,10}))).contains(i))
  ...

2 个答案:

答案 0 :(得分:1)

是的,你是对的。您需要在Java中实现Set,如果您需要非连续的数字列表,则必须使用循环填充它。

此外,Java不支持 Range 的构造。然而,像Groovy和Scala这样的其他JVM术语也可以。

This post可能会添加更多颜色

答案 1 :(得分:1)

不幸的是,Java中没有这样漂亮的结构。但是apache-commons提供了Range课程,可以满足您的需求