package Algorithms;
import cs1.Keyboard;
import java.util.*;
public class SieveofEratosthenes2 {
public static void main (String[] args){
//input number and create an array with the length of (num-1)
int num = Keyboard.readInt();
ArrayList prime = new ArrayList(num);
//populate array with all numbers from 2 to num
for(int i = 0; i < prime.size()-1; i++)
{
Integer temp = new Integer(i+2);
prime.add(i, temp);
}
System.out.println(prime.size());
Run Code Online (Sandbox Code Playgroud)
这里的构造函数没有设置ArrayList 的大小num,它将容量设置为num:
ArrayList prime = new ArrayList(num);
Run Code Online (Sandbox Code Playgroud)
ArrayList的大小仍为零,因此循环体永远不会运行.试试这个:
for (int i = 0; i < num - 1; i++)
{
Integer temp = new Integer(i+2);
prime.add(temp);
}
Run Code Online (Sandbox Code Playgroud)
尺寸定义:
此列表中的元素数量.
能力的定义:
每个ArrayList实例都有一个容量.容量是用于存储列表中元素的数组的大小.它始终至少与列表大小一样大.当元素添加到ArrayList时,其容量会自动增加.除了添加元素具有恒定的摊销时间成本这一事实之外,未指定增长策略的详细信息.
| 归档时间: |
|
| 查看次数: |
211 次 |
| 最近记录: |