我正在自学 Java,并拿起一本带有一些练习的书。其中一个练习要求我构建一个控制台应用程序,将键盘上的数字读取到 int[] 类型的数组中。数组中的条目不得超过 50 个。
假设有人输入 2,3,4,2,2,3
输出应该是2列,左边是数字,右边是次数(对于上面的数字如下)
2 3 3 2 4 1
我不确定解决这个问题的最佳方法,因为我对 java 很陌生。
到目前为止我所拥有的是:
编辑:根据这里一些人的建议进行了一些工作,这就是我现在所拥有的。
package arrayassignment;
import java.util.Scanner;
public class Entry {
private Scanner scn = new Scanner(System.in);
private int[] count = new int[51];
private int input = scn.nextInt();
private void setInput(int input){
this.input = input;
}
private int getInput(){
return input;
}
public void numberEntry(){
System.out.println("Please enter numbers between 0 and 50:");
for (int x=0; x<10; x++)
if (input == x)
count[x]++;
}
}
我计划从主方法类中调用这些方法,而不是像书中那样从主方法中执行所有操作,这是最好的 OO 方法。
我们将非常感谢您的意见。
谢谢。
最佳答案
Scanner scn = new Scanner(System.in);
int input;
int[] count = new int[10];
input = scn.nextInt();
for (int x=0; x<10; x++)
if (input == x)
count[x]++;
有多种方法可以实现这一点。上面的代码将检查用户输入的数字,并相应地在其各自的计数器记录中添加 1。这可能不是最有效的方法,但这是您可以使用的一种可能的方法。
(由于您的问题没有指定输入是带有逗号的字符串还是单个整数,所以我假设您的输入是单个整数。)
关于java - 计算输入某个数字的次数的数组 - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23038371/