在Python中,该enumerate
函数允许您迭代一系列(索引,值)对。例如:
>>> numbers = ["zero", "one", "two"]
>>> for i, s in enumerate(numbers):
... print i, s
...
0 zero
1 one
2 two
用Java有什么办法吗?
对于实现List
接口的集合,您可以调用listIterator()
方法以获取ListIterator
。迭代器(还有其他方法)有两种方法-
nextIndex()
,以获得索引;和next()
,以获取值(与其他迭代器一样)。
因此,上述Python的Java等效项可能是:
List<String> numbers = Arrays.asList("zero", "one", "two");
ListIterator<String> it = numbers.listIterator();
while (it.hasNext()) {
System.out.println(it.nextIndex() + " " + it.next());
}
与Python一样,它输出:
0 zero
1 one
2 two
问题内容: 最近,我遇到了一些Java代码,这些代码简单地将一些字符串放入Java TreeSet中,为其实现了基于距离的比较器,然后在日落时分快乐地计算出给定的分数来解决给定的问题。 我的问题 是否有适用于Python的等效数据结构? Java树集看起来基本上是一个有序字典,可以使用某种比较器来实现这种排序。 我看到有一个用于 OrderedDict的Py3K的PEP,但是我使用的是2.6.x。
问题内容: Java是否具有等效于Python 方法的方法? 问题答案: Guava还提供类似于Python的东西: 您也可以使用Guava的AbstractIterator实现一个相当简单的迭代器来执行相同的操作:
问题内容: 我有两个对象,想要将它们配对,就像Python中的函数一样。我很确定JDK中没有此功能,但是在相当广泛的库中是否有类似Apache通用收藏集的类似内容?谢谢。 问题答案: 功能Java具有,以及您对Haskell或Scala的期望。(实际上,作者几乎都是Haskell程序员。)
问题内容: 我知道我们可以使用Java中的方法通过指定其位置来获取字符串中的单个字符。C#中有等效的方法吗? 问题答案: 您可以像数组一样索引C#中的字符串,然后在该索引处获取字符。 例: 在Java中,您会说 在C#中,您会说
本文向大家介绍C#是否等效于Java的Thread.setDaemon?,包括了C#是否等效于Java的Thread.setDaemon?的使用技巧和注意事项,需要的朋友参考一下 与Java的Thread.setDaemon等效的C#是前台线程和后台线程的概念。 当前台线程关闭时,后台线程将终止。前台线程继续运行,直到最后一个前台线程终止。 用于后台线程的属性是IsBackground,该属性获取
问题内容: 我正在寻找像MySQL中那样的解析函数(有关更多信息,请参阅文档) 解析函数基于一组行来计算合计值。它们与集合函数的不同之处在于,它们为每个组返回多个行。 是否存在? 问题答案: 不,与MSDB,Oracle,PostgreSQL等其他DBMS相比,它是MySQL的主要不足之一。 我强烈怀疑将来是否会看到MySQL中的窗口函数,尤其是在Oracle收购MySQL之后。 更新04/201