有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

基于java条件将JSONArray追加为null的数组

我需要json对象输出,如下所示

{ name : primaryLevelPassed, //categoryName of passed student
  data : [123,110,106,null,null] },//passed object array
{ name : HighLevelPassed,     //categoryName of passed student
  data : [223,334,null,null,null] },//passed object array
{ name : primaryLevelFailed,  //categoryName of Failed student
  data : [null,null,null,23,44] },//failed object array
{ name : HighLevelFailed,     //categoryName of Failed student
  data : [null,null,06,23,44] }//data JSONArray(failed object array)

我想在datajsonarray中显示固定数量的数据点(即max_count=5),根据大小和值,它应该在末尾和开头加上null

在这里,我想展示失败和通过的要点,所以

  1. 对象数组失败,请保持最大计数大小, a、 如果小于最大计数,则在开始时追加null。 b、 如果(失败学生)>;=max_count,将max_count与最新的StudentID保持在描述顺序。 c、 如果没有失败的学生,则追加所有空值
  2. 传递的对象数组,a。需要在数组末尾追加失败的null长度,保持最大计数大小。b、 如果没有失败的学生和(通过的学生)>;=max_count,将max_count与最新的StudentID保持在描述顺序。c、 如果没有失败的学生,则追加所有空值

我现在使用的代码

    int max_count = 5;

    for(StudentCategory studentCategory : studentAgeCategoryList){ 

    JSONObject subData1 = new JSONObject();
    JSONObject subData2 = new JSONObject();
    //studentPassed
    List<Student> studentPassed = manager.getPassStudent(studentCategory.getCategoryId);
    for(Student student : studentPassed){
        subData1.put("name", studentCategory.getCategoryName()+"Passed");
        JSONArray series1DataPointsArray = new JSONArray(); 
        series1DataPointsArray.add(new JsonPrimitive(student.getTotalMark());
        subData1.put("data",series1DataPointsArray);                
    }   
    //studentFailed
    List<Student> studentFailed = manager.getFailedStudent(studentCategory.getCategoryId);      
    for(Student student : studentFailed){
        subData2.put("name", studentCategory.getCategoryName()+"Failed");
        JSONArray series2DataPointsArray = new JSONArray();     
        series2DataPointsArray.add(new JsonPrimitive(student.getTotalMark());
        subData2.put("data",series2DataPointsArray);    
    }
    }
this code gives output
{ name : primaryLevelPassed,
data : [123,110,106,444,223,334,106....] }
   { name : HighLevelFailed,
data : [123,110,106,444,223,334,106....] }

请任何人帮我得到像上面那样的空输出


共 (0) 个答案