gpt4 book ai didi

java - 将多个用户输入存储到整数数组中

转载 作者:行者123 更新时间:2023-11-30 11:27:02 25 4
gpt4 key购买 nike

这就是我想要做的。让用户输入数字,将它们存储在一个数组中,然后在一行中打印出所有这些数字。我也必须使用方法/函数。我认为到目前为止我做得很好,它在 eclipse 中没有显示任何错误。我坚持的是将他们的输入存储到一个数组中。我希望他们一次输入一个数字,直到他们满意并输入“退出”。尽管环顾四周,但我还没有读过如何将事物存储在数组中,尤其是逐步存储多个事物。到目前为止,这是我的代码,在此先感谢您的帮助!

import java.util.Scanner;

public class intarray {

public static void main(String[] args) {
System.out.println("Enter a number then hit enter. You may then enter another number or end by typing quit.");
String x;
Scanner input = new Scanner(System.in);
while (true) {
x=input.next();
if (x.equalsIgnoreCase("quit")) {break;}
if (x.equals(null)) throw new Error("You entered nothing. Try again.");
int stringLength = x.trim().length();
if (stringLength == 0) throw new Error("Seems you only entered spaces. Try again.");
isNum(x);
int goingintoarray = Integer.parseInt(x);



int array[];

}
}

public static String isNum(String t) {


int user=Integer.parseInt(t);
String convertback = Integer.toString(user);
return convertback;
}

最佳答案

因为你不知道有多少元素会有一个数组是一个坏主意,因为当新元素出现时你必须经常调整它的大小(复制数组很昂贵!)或者在开始时实例化一个足够大的数组(这是一种浪费,但仍然不能 100% 地保护您免于最终不得不调整它的大小)。

改为使用 Java 的列表(最好是 LinkedList)听起来是个好主意,因为您可以动态添加元素而无需调整数据结构的大小。

List<Integer> numbers = new LinkedList<>();
while(true) {
// something
numbers.add(goingintoarray);
// something
}

注意其他实现 - 例如 ArrayList 使用数组 (d'uh ;-) ) 来存储元素,因此您会遇到同样的问题,但调整大小的部分将由实现为您处理。

@Edit:按照惯例,Java 中的类是使用以大写字母开头的 CamelCase 编写的。

关于java - 将多个用户输入存储到整数数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19508105/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com