找到最低分,然后使用并行数组找到相应的名称

时间:2015-06-01 20:10:23

标签: arrays indexing parallel-processing minimum

首先,对不起,如果这是一个初学者问题,但是我在努力从并行数组中找到最低测试分数后,从硬编码数组中检索相应人的名字。赋值给了我两个要使用的数组。我不知道如何去检索名称的索引。这是我到目前为止所拥有的。

import javax.swing.JOptionPane;
import java.util.Arrays;
public class Lab0 {

    public static void main(String[] args) {
        String[] names = {"Joey","Lisa","Karen","Mark","Christopher"};
        double[] scores = {78.5, 97.0, 42.5, 86.5, 42.5}; 


        JOptionPane.showMessageDialog(null,
        "The lowest score is " + getMinValue(scores)
        );
    }

    public static double getMinValue(double[] scores){  
        double minValue = scores[0];  
        for(int i=1;i<scores.length;i++){  
        if(scores[i] < minValue){  
          minValue = scores[i];  
        }  
     }  
    return minValue; 
  } 

}

1 个答案:

答案 0 :(得分:1)

假设你的意思是:

String [] names = {“Joey”,“Lisa”,“Karen”,“Mark”,“Christopher”};
double []得分= {78.5,97.0,42.5,86.5,42.5};

代表Joey得分是78.5,Lisa是97.0等等,你只需要意识到同一个索引访问两个数组上的正确信息。
即,
得分[2] = 42.5
名字[2] =“凯伦”

您在 codegetMinValue(double []得分)函数中计算的索引 i 与在names数组中获取相应名称所需的索引相同(名称[I]))。 我假设这是一个校对,因为我永远不会组织这样的数据,我相信其余的自己会非常有教育意义所以我会让你思考如何重写你的代码来存储索引和最小值相同时间。有几种方法。您还应该考虑在数组为null时要执行的操作。如果有几个人具有相同的最低分数,该作业是否要求您返回最小名称和一个名称或名称列表?你这样做的方式只会得到一个名字,我认为这不是分配所需要的。