如果我有這樣的陣列 int[] array = {2,4,6,8,11};
如何列印每個陣列元素之間的間隙?
差距 = 3 5 7 9 10
這是我的程式,但輸出始終為 5,它不列印其他間隙是否有任何方法而不是哈希集?謝謝你
`
import java.util.HashSet;
import java.util.Set;
public class test {
public static void main(String[] args) {
int[] array = {2,4,6,8,11};
Set<Integer> set = new HashSet<>();
for(int m : array) {
if( set.add(m));
}//for
for(int i = 1 ; i < set.size() ;i ) {
if(!set.contains(i)) {System.out.println("Gaps = " set.size()); }
}
}
}
`
uj5u.com熱心網友回復:
在以下解決方案中,我修復了您所犯的邏輯錯誤。還有其他有效的方法可以解決這個問題。
import java.util.HashSet;
import java.util.Set;
public class test {
public static void main(String[] args) {
int[] array = {2,4,6,8,11};
Set<Integer> set = new HashSet<>();
for(int m : array) {
if( set.add(m));
}//for
for(int i = 1 ; i < (2* set.size()) 1 ;i ) {
if(!set.contains(i)) {System.out.println(i); }
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/534621.html
標籤:爪哇数组for循环
上一篇:For回圈復制和編輯資料幀
下一篇:打破一個長度遞減的for回圈
