好的......我想知道我是否可以这样做:
public static void main (String[] args)
{
Scanner input = new Scanner(System.in);
double[] numbers = new double[5];
for (int i = 0; i < numbers.length; i++)
{
System.out.println("Please enter number");
numbers[i] = input.nextDouble();
}
}
但我不希望它被限制在0-5。例如,我可以输入1 2 3 4 5 6 7 8 9 10 11
的用户输入这可能吗?怎么做?
答案 0 :(得分:1)
Apache ArrayUtils让你可以添加&#34;新元素:
使用旧版本创建新数组并添加新元素。然后你可以这样做:
array = ArrayUtils.add(array, newElement)
答案 1 :(得分:1)
输入值console,无限制并存储在数组中:
Scanner input = new Scanner(System.in);
String s;
ArrayList<Double> numbers= new ArrayList<>();
System.out.print("Please enter number: ");
s=input.nextLine();
String [] strnum = s.split("\\s+");
int j=0;
while(j<strnum.length){
numbers.add(Double.parseDouble(strnum[j++]));
}
for (Double n : numbers)
System.out.println(n);
答案 2 :(得分:0)
尝试ArrayList
课程。添加新项目时,它的大小将会扩大。
使用示例:
ArrayList<Integer> myList = new ArrayList<Integer>();
myList.add(5);
int a = myList.get(0);
答案 3 :(得分:0)
阵列有限。您应该使用ArrayList
类。
import java.util.*;
//...
List<String> list = new ArrayList<String>();
list.add("Hello!");
list.add("How are you?");
System.out.println(list.get(0)); // prints "Hello!"
for (String s : list) {
System.out.println(s);
} // prints "Hello!", "How are you?"
或强>
ArrayList<String> strings = new ArrayList<String>();
strings.add("String1");
strings.add("String2");
// To access a specific element:
System.out.println(strings.get(1));
// To loop through and print all of the elements:
for (String element : strings) {
System.out.println(element);
}
ArrayList类扩展了AbstractList并实现了List接口。 ArrayList支持可以根据需要增长的动态数组。
标准Java数组具有固定长度。创建数组后,它们无法增长或缩小,这意味着您必须事先知道数组将包含多少元素。
使用初始大小创建数组列表。超过此尺寸时,将自动放大该集合。删除对象后,阵列可能会缩小。
ArrayList类支持三个构造函数。第一个构造函数构建一个空数组列表。
ArrayList( )
以下构造函数构建一个使用集合c。
的元素初始化的数组列表ArrayList(Collection c)
以下构造函数构建具有指定初始容量的数组列表。容量是用于存储元素的基础数组的大小。
当元素添加到数组列表时,容量会自动增长。
http://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html
答案 4 :(得分:-1)
是的,您可以使用以下代码:
ArrayList<Double> list = new ArrayList();
boolean condition = true;
Scanner input = new Scanner (System.in);
while(condition){
list.add(input.nextDouble());
System.out.println("Do you want to continue Y/N ?");
condition = (input.nextLine().charAt(0) == 'Y');
}