【发布时间】:2013-09-18 18:38:13
【问题描述】:
我知道这很简单。我将如何从控制台获取输入并将输入存储到 Set 中,该 Set 稍后可用于在 Method 中返回。这是我目前所拥有的。
import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;
public class InputConsole {
public static void main(String[] args) {
Set<Integer> s = new HashSet<Integer>(6);
int[] numbers = new int[6];
Scanner input = new Scanner(System.in);
for (int i = 0; i < numbers.length; i++) {
System.out.print("Please enter number ");
numbers[i] = input.nextInt();
{
}
}
}
}
我使用 and Array 只是为了测试。数组设置为 6,所以如果我在控制台中输入 6 个数字,它将停止。我已经实例化了 HashSet,但我不知道如何将控制台中的数字存储到其中。
【问题讨论】:
-
为什么要先加入数组而不是直接加入集合?
-
...
s.add(...)不起作用? -
如何直接添加到集合中?
-
使用
s.add(j),其中 j 是从 Scanner 读取的数字。但是请注意,使用HashSet会删除重复项(如果他们输入数字 5 两次,您只会在集合中找到一次)并会删除顺序(如果他们输入 2 4 3 9 8 5,当您遍历该集合时,它可以以任何顺序出现)。 -
另外,你说你想“将输入存储到一个 Set 中,以后可以用来在一个方法上返回”但是你的 Set 是你的
main方法中的一个局部变量......除非您将其设为实例或类变量,否则您将无法从其他方法返回它。
标签: java arrays set java.util.scanner hashset