在Java中,增強(qiáng)for循環(huán)(也稱為for-each循環(huán))是用于遍歷數(shù)組或集合的一種簡(jiǎn)化語(yǔ)法。它本質(zhì)上是使用迭代器來(lái)遍歷元素,因此不提供直接的下標(biāo)訪問(wèn)。
如果你需要獲取下標(biāo),可以使用傳統(tǒng)的for循環(huán)來(lái)代替增強(qiáng)for循環(huán)。例如:
int[] nums = {1, 2, 3, 4, 5};
for (int i = 0; i < nums.length; i++) {
int num = nums[i];
System.out.println("下標(biāo):" + i + ",元素:" + num);
}
這樣就可以通過(guò)i
來(lái)獲取下標(biāo)。
另外,你也可以使用java.util.List
的indexOf()
方法來(lái)獲取元素的下標(biāo)。例如:
List<Integer> nums = Arrays.asList(1, 2, 3, 4, 5);
for (Integer num : nums) {
int index = nums.indexOf(num);
System.out.println("下標(biāo):" + index + ",元素:" + num);
}
但需要注意的是,indexOf()
方法的時(shí)間復(fù)雜度為O(n),因此對(duì)于大型集合而言可能會(huì)有性能問(wèn)題。