2016-10-24 108 views
-4

對於不好的標題感到抱歉,我無法想出更好的東西。使用陣列中除了一個以外的所有元素

我想要看看數組part[]是否有任何元素是0.但我不希望它檢查part[0]

if(Integer.parseInt(part[]) == 0) 

所以basiclly,如果我可以做類似

if(Integer.parseInt(part[!=0]) == 0) 

if(Integer.parseInt(part[<0]) == 0) 

但顯然這不會工作

+3

你試圖樣環:爲(INT I = 1;我

+1

'對(INT I = 1;我 QBrute

回答

0

如果你不修改數組,你可以使用Arrays.copyOfRange(int [] original,int from,int to)創建一個範圍的副本:

import java.util.Arrays; 
public static void main(String args[]) 
{ 
    int arr[] = { 1, 2, 3, 4, 5, 6 }; 
    fun(Arrays.copyOfRange(arr, 2, arr.length), 3); 
} 

public static void fun(int a[], int n) 
{ 
    for (int i = 0; i < n; i++) { 
     System.out.printf("%d ", a[i]); 
    } 
} 
3

要檢查的陣列具有帶的值爲0的任何元素,而無需檢查數組的第一個索引,你可以這樣做:

boolean hasZero = false; 
for (int i = 1; i < array.length(); i++) { 
    if (array[i] == 0) { 
     hasZero = true; 
     break; 
    } 
} 

使用Stream API,則可能是:

boolean hasZero = Arrays.stream(array).skip(1).anyMatch(i->i==0); 
0

在Java 8中,您可以使用流。

if (IntStream.range(1, part.length).anyMatch(i -> Integer.parseInt(part[i])==0)) { 
    // do stuff 
} 
相關問題