有人可以(用简单的语言向菜鸟解释)ArrayList、Array、这个例子中使用的方法吗?

问题描述 投票:0回答:1

我的问题涉及我在学习 Java 时所做的练习中的一种方法。我明白该程序应该做什么(一种方法确定数字是否为素数,另一种方法仅存储数组中的素数。我明白了。

我也了解数组和数组列表有何不同。我也知道什么是方法。但由于某种原因,我无法理解这两行放在一起时发生的事情。

public ArrayList<Integer> onlyPrimes(int[] numbers) {
ArrayList<Integer> primes = new ArrayList<Integer>();

这就像将 arrayList 与方法合并并使用数组作为参数。有人可以用一个“非常简单的例子/解释”来向初学者解释这里发生的事情吗?我不明白这一切是如何运作的。 非常感谢专业人士的帮助!

public boolean isPrime(int number) { if (number==2) { return true; } else if (number<2) { return false; } for(int i=2;i<number;i++) { if(number % i==0) { return false; } } return true; } public ArrayList<Integer> onlyPrimes(int[] numbers) { ArrayList<Integer> primes = new ArrayList<Integer>(); for (int number : numbers) { if (isPrime(number)) { primes.add(number); } } return primes; } public static void main(String[] args) { PrimeDirective pd = new PrimeDirective(); int[] numbers = {6, 29, 28, 33, 11, 100, 101, 43, 89}; System.out.println(pd.isPrime(7)); System.out.println(pd.isPrime(28)); System.out.println(pd.isPrime(2)); System.out.println(pd.isPrime(0)); System.out.println(pd.onlyPrimes(numbers)); }

}

java arrays arraylist methods
1个回答
0
投票
第一行定义方法的
signature

。该方法的名称为 onlyPrimes。此方法将返回对对象的引用,即类

ArrayList
的实例(或返回
null
)。
ArrayList
对象将包含零个、一个或多个
Integer
类的对象。当程序员调用此方法时,她将传递一个原始
int
值的数组。在我们的 onlyPrimes 方法体内,这个传递的数组将被命名为
numbers
下一行是我们名为 

onlyPrimes

的方法主体中的第一行。请注意我如何更正您的缩进,以明确 (a) 方法的声明和 (b) 该方法的主体之间的关系。

方法体的第一行声明了一个名为 

primes

的对象引用变量。该变量应保存对类

ArrayList
的实例的引用。该实例是
Integer
类的对象集合。 EQUALS 符号将对象引用分配给我们的变量
primes
。等号后面的代码首先实例化一个新集合,即
ArrayList
类的对象。该集合是空的,不包含任何元素,但能够保存对
Integer
类的对象的引用。
    

© www.soinside.com 2019 - 2024. All rights reserved.