Java 使用非无效方法打印一系列问题的摘要
我写了这段代码Java 使用非无效方法打印一系列问题的摘要,java,arrays,Java,Arrays,我写了这段代码 import java.util.Scanner; public class SportsEvents { public static void main(String[] args) { String[] contestants = getcontestants(); int[] score=getscores(); System.out.println("The maximum score is: "+getMaxValue(score));
import java.util.Scanner;
public class SportsEvents {
public static void main(String[] args) {
String[] contestants = getcontestants();
int[] score=getscores();
System.out.println("The maximum score is: "+getMaxValue(score));
System.out.println("The minimum score is: "+getMinValue(score));
System.out.println("The average is: "+getAverage(score));
}
public static String[] getcontestants()
{
int numcontestants=1;
String name[] = new String[numcontestants];
for(int j=0;j<numcontestants;j++){
Scanner ip=new Scanner(System.in);
System.out.println("Enter contestant's name");
name[j]=ip.nextLine();
}
return name;
}
public static int[] getscores()
{
int numscores=8;
int score[] = new int[numscores];
for (int a=0;a<numscores;a++){
Scanner ip=new Scanner(System.in);
System.out.println("Enter the scores");
score[a]=ip.nextInt();
}
return score;
}
public static int getMaxValue(int[] array) {
int maxValue = array[0];
for (int i = 1; i < array.length; i++) {
if (array[i] > maxValue) {
maxValue = array[i];
}
}
return maxValue;
}
public static int getMinValue(int[] array) {
int minValue = array[0];
for (int i = 1; i < array.length; i++) {
if (array[i] < minValue) {
minValue = array[i];
}
}
return minValue;
}
public static int getAverage(int[] people) {
int sum = 0;
for (int i=0; i < people.length; i++) {
sum = sum + people[i];
}
int result = sum / people.length;
return result;
}
}
import java.util.Scanner;
公共体育赛事{
公共静态void main(字符串[]args){
字符串[]参赛者=GetCompetities();
int[]score=getscores();
System.out.println(“最大分数为:”+getMaxValue(分数));
System.out.println(“最低分数为:”+getMinValue(分数));
System.out.println(“平均值为:“+getAverage(score));
}
公共静态字符串[]getCompetitors()
{
int numcontestants=1;
字符串名称[]=新字符串[numContants];
对于(int j=0;j您想要的是将即时结果存储到单个对象中,该对象包含min、max、avg
在java 8中,已经有一个现成的方法供您使用:
int[] score=getscores();
IntSummaryStatistics stats = Arrays.stream(score).summaryStatistics();
IntSummaryStatistics
包含
private long count;
private long sum;
private int min;
private int max;
您还可以手动获取该结果:
首先定义一个将保存数据的类:
public class SportsEvents {
public static class IntArrayStatistic {
private int min = Integer.MAX_VALUE;
private int max = Integer.MIN_VALUE;
private int sum = 0;
private int avg;
private int count;
// Getter - Setter
public static IntArrayStatistic of(int[] input) {
if (input == null) {
throw new IllegalArgumentException("Null array");
}
IntArrayStatistic result = new IntArrayStatistic();
result.count = input.length;
for (int i : input) {
if (i < result.min) {
result.min = i;
}
if (i > result.max) {
result.max = i;
}
result.sum += i;
}
result.avg = result.sum / result.count;
return result;
}
}
}
您想要的是将即时结果存储到单个对象中,该对象包含min、max、avg
在java 8中,已经有一个现成的方法供您使用:
int[] score=getscores();
IntSummaryStatistics stats = Arrays.stream(score).summaryStatistics();
IntSummaryStatistics
包含
private long count;
private long sum;
private int min;
private int max;
您还可以手动获取该结果:
首先定义一个将保存数据的类:
public class SportsEvents {
public static class IntArrayStatistic {
private int min = Integer.MAX_VALUE;
private int max = Integer.MIN_VALUE;
private int sum = 0;
private int avg;
private int count;
// Getter - Setter
public static IntArrayStatistic of(int[] input) {
if (input == null) {
throw new IllegalArgumentException("Null array");
}
IntArrayStatistic result = new IntArrayStatistic();
result.count = input.length;
for (int i : input) {
if (i < result.min) {
result.min = i;
}
if (i > result.max) {
result.max = i;
}
result.sum += i;
}
result.avg = result.sum / result.count;
return result;
}
}
}
你的意思是,你需要写一个方法来返回所有信息吗?可能的重复你的意思是,你需要写一个方法来返回所有信息吗?可能的重复我想保留我的程序,但做一个新的非无效方法,只做一个promptI的审查我想保留我的程序,但做一个新的非无效方法,将我们必须检查一下提示