Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中的数组数组_Java_Arrays_List - Fatal编程技术网

Java中的数组数组

Java中的数组数组,java,arrays,list,Java,Arrays,List,所以我想开始说我是Java编程新手。这是我的问题。我想创建一个程序,它本质上是在数组中循环。数组的长度必须可变 我的第一步是从一系列分数开始。每个阵列都连接到特定的用户。这些阵列的长度因用户而异 我的第二步是将这些用户数组分组到一个更大的数组中,各个参数是步骤1中的用户数组。此数组的长度应可变,具体取决于用户数 我的最后一步是通过一系列数学运算运行这个较大的数组。我不知道如何创建计算。这是进行计算的主要方法 import java.lang.Math; public class Advisor

所以我想开始说我是Java编程新手。这是我的问题。我想创建一个程序,它本质上是在数组中循环。数组的长度必须可变

我的第一步是从一系列分数开始。每个阵列都连接到特定的用户。这些阵列的长度因用户而异

我的第二步是将这些用户数组分组到一个更大的数组中,各个参数是步骤1中的用户数组。此数组的长度应可变,具体取决于用户数

我的最后一步是通过一系列数学运算运行这个较大的数组。我不知道如何创建计算。这是进行计算的主要方法

import java.lang.Math;

public class Advisor_Score {
    public static void main(String[] args)
    {


        double review_sum[]={5,5,5,5,5,5,5,5,5,5};
        //Every time a user answers a question, they will be rated. This is the array holds these ratings.
        //A given user will have ten advisor scores, one for each category.
        double sum = 0;
        {   

            for(int x=0;x<review_sum.length;x++)
                //All scores less than 0 or more than 5 are thrown out
            {
                if (review_sum[x]<0 || review_sum[x]>5)
            {
                    sum+=0;
            }
                else
                    sum+=review_sum[x];
            }
        double raw_advisor=(sum-(3*review_sum.length))/4;
        System.out.println(raw_advisor);
        double advisor_score_scaled= 2.5*(1-Math.pow(Math.E, -.5*raw_advisor));
        double advisor_score = 2.5 + advisor_score_scaled;
        System.out.println(advisor_score);
        }
    }
}
import java.lang.Math;
公开课导师分数{
公共静态void main(字符串[]args)
{
双重审查_sum[]={5,5,5,5,5,5,5,5};
//每次用户回答问题时,都会对其进行评分。这是保存这些评分的数组。
//给定的用户将有十个advisor分数,每个类别一个。
双和=0;
{   

对于(int x=0;x如果我正确地阅读了您的问题,您可能希望将用户名映射到分数列表。您可以执行类似的操作(此示例是人为设计的,因此值是硬编码的):

Map userScores=newlinkedhashmap();
字符串user1=“Bob”;
列表分数1=新的ArrayList();
分数1.增加(5);
分数1.增加(10);
分数1.增加(15);
userScores.put(user1,scores1);
...
...
字符串user4=“Rob”;
列表分数4=新的ArrayList();
分数4.增加(2);
分数4.增加(3);
分数4.增加(4);
userScores.put(user4,scores4);
然后,您可以像这样在地图上迭代,访问用户及其分数:

for(Map.Entry<String, List<Integer>> entry : userScores.entrySet()) {
   String user = entry.getKey();
   List<Integer> scores = entry.getValue();

   //to iterate over the list of scores
   for(int score : scores) {
       ...
   }   
}
for(Map.Entry:userScores.entrySet()){
字符串user=entry.getKey();
列表分数=entry.getValue();
//在分数列表上迭代
对于(整数分数:分数){
...
}   
}
要回答有关数组数组的一般问题,可以使用如下列表:

List<List<Integer> listOfLists = new ArrayList<List<Integer>>();
List<Integer> list1 = new ArrayList<Integer>();
list1.add(1);
list1.add(2);
list1.add(3);

listOfLists.add(list1);

...
列表
公共类数组2{
公共静态void main(字符串[]args){
double[]myList={1.9,2.9,3.4,3.5};
//打印所有数组元素
for(int i=0;imax)max=myList[i];
}
System.out.println(“最大值为”+Max);
}
}
List<Integer> list1 = new ArrayList<Integer>();
list1.add(1);
list1.add(2);
list1.add(3);

listOfLists.add(list1);

...
public class Array2 {

   public static void main(String[] args) {
      double[] myList = {1.9, 2.9, 3.4, 3.5};

      // Print all the array elements
      for (int i = 0; i < myList.length; i++) {
         System.out.println(myList[i] + " ");
      }
      // Summing all elements
      double total = 0;
      for (int i = 0; i < myList.length; i++) {
         total += myList[i];
      }
      System.out.println("Total is " + total);
      // Finding the largest element
      double max = myList[0];
      for (int i = 1; i < myList.length; i++) {
         if (myList[i] > max) max = myList[i];
      }
      System.out.println("Max is " + max);
   }
}