该代码基于用户输入的列表。然后显示列表并要求输入y/n。如果是,它会显示回车,并允许您输入用逗号分隔的数字。这很好。
然而,在当循环之后,它会启动我还不明白的collections.frequency。只有当数字像12一样一个接一个地输入时,它才起作用,然后点击输入更多的数字,直到按下n。这打破了循环。并显示重复的列表。
然而,如果一次将所有数字输入到一行中,如12、23、55等,则不起作用。它不会找到或显示重复项。只有清单上的内容。我发现一次输入一个数字非常麻烦。有人能帮我更改代码吗?这样我就可以一次输入所有数字,然后按enter键,仍然可以搜索重复的代码,并在最后显示重复的代码。
package Input_Array_From_User;
import java.util.*;
public class Input_Array {
public static void main(String[] args) {
// TODO Auto-generated method stub
List<String> list = new ArrayList<String>();
Scanner stdin = new Scanner(System.in);
do {
System.out.println("Current list is " + list);
System.out.println("Add more? (y/n)");
if (stdin.next().startsWith("y")) {
System.out.println("Enter : ");
list.add(stdin.next());
} else {
break;
}
} while (true);
System.out.println("\nExample 2 - Count all with frequency");
Set<String> uniqueSet = new HashSet<String>(list);
for (String temp : uniqueSet) {
System.out.println(temp + " shows that many times : " + Collections.frequency(list, temp));
}
}
您可以一次添加所有数字,用空格分隔,完成后点击回车键:
1 2 3 4 5
不过,要做到这一点,你必须停止询问用户是否希望在每次迭代中添加更多内容。要知道何时停止,可以要求用户在开始循环之前通知他们要输入的元素数量,并在达到该数量时停止循环。
代码如下所示:
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
Scanner stdin = new Scanner(System.in);
int n = stdin.nextInt();
for (int i = 0; i < n; i++) {
list.add(stdin.next());
}
System.out.println("\nExample 2 - Count all with frequency");
Set<String> uniqueSet = new HashSet<String>(list);
for (String temp : uniqueSet) {
System.out.println(temp + " shows that many times : " + Collections.frequency(list, temp));
}
}
输入的一个例子是:
5
1 2 2 4 5
相应的输出是:
Example 2 - Count all with frequency
1 shows that many times : 1
2 shows that many times : 2
4 shows that many times : 1
5 shows that many times : 1
如果您想使用自定义分隔符,例如,请检查
Scanner
中的useDimiter()方法。
问题内容: 我正在尝试找出如何创建输入验证的方法,在该方法中,您不能两次输入相同的数字,而且不能在数字范围内输入,除非它是整数,否则无法输入任何内容。我目前正在创建彩票程序,不确定如何执行此操作。任何帮助将非常感激。我的数字范围验证有效,而其他两个验证无效。我尝试了非重复号码验证,但我不确定如何执行仅数字验证。有人可以告诉我如何构建此结构。 此方法在我的Player类中 问题答案: 如下进行: 运
程序是这样的
任务是“编写一个程序,为用户输入的整数显示用户指示的倍数。” 我想我不需要一个完全直接的答案(尽管我确实想知道要使用的方法/公式),因为我想把这个作为一个学习经验,以便自己完成任务并从中学习。我真的想知道的过程和使用的方法,以及找到一个公式。: 我真的不确定如何编写一个代码,显示一个用户输入的整数的用户输入的数字。最难的部分似乎是编写循环公式。不知道从哪里开始。 到目前为止,我已经: 我真的不确定
问题内容: 这个问题已经在这里有了答案 : MySQL查询以逗号分隔的字符串查找值 (11个答案) 2年前关闭。 我有一个MySQL字段,该字段引用另一个表,其中id保存为逗号分隔列表,例如: 代表另一个表中的值。我知道这是很不好的做法,但是错了,但这来自上面,我对此无能为力。现在的问题是,我想使用以下查询在该字段中进行搜索: 现在的问题显然是在此示例查询中几乎可以找到所有条目,因为最常见的ID在
首先要说的是,我对stackoverflow中的“提问”还不熟悉,所以如果我的问题不属于正确的类别,或者已经有人问过类似的问题,我表示歉意。我试图找到一个相关的问题,但我找不到。我的有点特别,这将作为我将来编程的一个例子。 我尝试创建的简单程序的流程是: > 起始编号为的,例如0 该数字递增1,直到该数字增加到100个数字,此时... 程序询问"Y/N"是否是,然后重复步骤1和2(每次重复这个过程
问题内容: 我试图用来获取数字列表,但是带有代码 输入给出的结果为,因此我想它会将输入解释为字符串。有什么直接方法可以列出清单吗?也许我可以用来提取整数,但如果可能的话,我宁愿使用更的解决方案。 问题答案: 在Python 3.x中,使用它。 例