当前位置:编程学习 > JAVA >>

问大家一个问题,具体描述如详细内容

现在有一个需求,有一个JSONArray数组,数组长度不固定,但要求固定输出15个数组中的值,这个如何处理? JAVA JSON 算法 --------------------编程问答-------------------- 没太明白你的需求,数组的例子举一个,然后输出结果给一个撒。 --------------------编程问答-------------------- 举例如下,比如数组 newArray[0,1,2,3,4,5,6,7,8,9],这是一个定长的数组,这只是举例 ,数组其实是不定长的,要求不管这个不定长的数组长度多少, 转换生成的新数组,都输出15个值.

如果这个数组有365个元素,输出是15个,如果这个数组是700个值,输出的新数组,也只包括15个值. --------------------编程问答-------------------- 比如:newArray[0,1,2,3,4,5,6,7,8,9],是十个值,要输出成array[0,5,9]三个值 ,但是newArray是不固定长度的,有可能超过十个值,比如500个值 ,输出的也是array[0,250,500]l三个值.

大概就是一个不固定长度的数组,固定输出定长的数组的意思. --------------------编程问答-------------------- CSDN几年没来,回复很快
--------------------编程问答-------------------- 新数组的取值有什么要求吗 --------------------编程问答--------------------

import java.util.ArrayList;
import java.util.List;


/**
 * 测试.
 * 
 * @author Ruidong_pu
 * @version 2013.1.3
 */
public class TestTop {

/**
 * list是一个有序的集合.并且长度可变
 * 按照你的提示,我觉得是取[0,最大数字/2,最大数字]
 * 下面这个方法只要传入一个最大数字就可以生成你需要的输出.
 * @param num
 * @return List
 */

public List ListNum(long num){

if (num<0||num>Long.MAX_VALUE) { //这一步是用于判断输入的数字是否小于0,并且大于LONG的最大数字.
System.err.println("输入的数字小于0!,或者超过了LONG的最大容量");
return null;
}
/*
 * >>可注释
 * 原始list.
 */
List list = new ArrayList();
for (int i = 0; i <= num; i++) {
list.add(i);
}

/*
 * 可注释end<<
 * 如果你只是需要输出那三个数字,而不需要添加到List那么可以把上面的4行代码注释掉
 */


/*
 * 新list,用于添加需要输出的数字.
 */

List newlist = new ArrayList();

/*
 * 将需要输出的三个数字插入到新list.
 */
newlist.add(0);
newlist.add(num/2);
newlist.add(num);

return newlist;
}



public static void main(String []args) {
// TODO Auto-generated method stu
TestTop t =new TestTop();
List list=t.ListNum(-150L);//输入一个最大值.
if (list!=null) {
for (Object obj : list) {
System.out.println(obj);
}
}

}
}




用List帮你写了一个,如果还有问题Q我吧877470746.
--------------------编程问答-------------------- 用JSONArray的listIterator()方法迭代出15个不可以么
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,