2017-01-22 158 views
-2
public static void main(String[] args) { 
    int array [] = {1,2,3,4,5}; 
    if (array[] < 4) { 
     System.out.println(array[] + "is less than 4"); 
    } 
} 

如何使这项工作?我想使用数组中的所有数字,但是当我这样做时(数组[] ...),我必须将一个数字放到[]中。数组和if语句中的语句

+0

使用'loops'遍历数组 –

+3

什么是一条线,如你的本意'如果([]数组<4 )'?这不是有效的Java语法,目前还不清楚你期望的含义。请参阅[Oracle Java教程:数组](https://docs.oracle.com/javase/tutorial/java/nutsandbolts/array.html)以了解如何使用数组。 – Jesper

回答

2

如果您想验证每个元素的数组中,你可以使用一个for循环递增指数:

for (int i = 0; i < array.length; i++) { 
    if (array[i] < 4) { 
     System.out.println(array[i] + " is less than 4"); 
    } 
} 
2

作为替代@shmosel,你也可以使用每个循环:

public static void main(String[] args) { 
    int array []= {1,2,3,4,5}; 
    for (int item : array) { 
     if (item < 4) { 
      System.out.println(item + "is less than 4"); 
     } 
    } 
} 
0

您试图比较一次无效的完整数组。

您需要迭代数组并逐个比较每个数组元素。

for (int i=0; i<array.length; i++) 
{ 
    if (array[i] < 4) { 
     System.out.println(array[i] + " is less than 4"); 
    } 
} 
+0

非常感谢! – Marti

+0

你能解释我是什么吗?对不起,我是这个新手 – Marti

+0

@Marti这里有一个基本的(可能过于简单但足够好的)概述。数组是内存中的一串顺序整数变量。数组本身只是该组中第一个变量的引用。因此,不可能一次计算所有元素。你必须迭代每一个,就像达伦说的那样。 –

0
以下

内部的for loop

if(array[]<4){ 
      System.out.println(array[] + "is less than 4"); 

片的这样的代码

public static void main(String[] args) { 
     int array []= {1,2,3,4,5}; 
     for (int i = 0; i < array.length; i++) { 
     if(array[i]<4){ 
      System.out.println(array[i] + "is less than 4"); 
     } 
    } 
    } 

可选择地移动,简单的解决方案可以利用一个enhanced for-loop

public static void main(String[] args) { 
     int array []= {1,2,3,4,5}; 
     for (int value : array) { 
     if(value<4){ 
      System.out.println(value + "is less than 4"); 
     } 
    } 
    } 
-1

你已经定义了如下元素数组: [1,2,3,4,5]。在阵列中,项目位于从0到4个位置,这意味着你有:

Array[0] = 1 
Array[1] = 2 
Array[2] = 3 
Array[3] = 4 
Array[4] = 5 

您应该使用一个循环,从0到4访问所有的元素,例如:

public static void main(String[] args) { 
     int array []= {1,2,3,4,5}; 
    for(int i=0; i<array.length); i++){ 
     if(array[i]<4){ 
      System.out.println(array[i] + " is less than 4"); 
     } 
    } 
} 

这将进行5次迭代,“i”的值将递增1直到达到值5,然后循环结束(条件是i < array.length)。这将产生输出:

1 is less than 4 
2 is less than 4 
3 is less than 4 
+2

您在答案中提供的代码有多个错误。 – duskwuff

+0

谢谢,我编辑它并在开头添加了一个解释 – asehu

0
public static void main(String[] args) { 
     int array []= {1,2,3,4,5}; 

      for (int i = 0; i < array.length; i++) { 
      if(array[i]<4){ 
     System.out.println(myList[i] + " "); 
     } 
    } 
    } 
} 
0

其他人已经回答了你的问题。我想添加一些额外的信息。如果你想学习Java,你应该熟悉Java 8.在Java 8是:

public static void main(String[] args) 
{ 
    int array[] = {1,2,3,4,5}; 
    Arrays.stream(array).filter(i -> i < 4).forEach(out -> System.out.println(out + " is less than 4")); 
}