java遍历list集合问题

List<Integer>list=dao.xxxxxx;//从数据库中获取的一个list集合Randomr=newRandom();Integera=r.nextInt... List<Integer> list =dao.xxxxxx;//从数据库中获取的一个list集合

Random r = new Random();

Integer a =r.nextInt(50);//随机生成一个数
for(Integer i:list){
if(i==a){
//要求如果生成的数和list集合中的任意一个相等,则a需要减去1后输出
/*例如list中有{1, 3, 5,6, 7, 9, 10} ,如果a=2,直接输出,
* 如果a=9,9存在于集合中,输出a-1,也就是8
* 如果a=7,7存在,a-1=6还是存在,a-1=5还是存在,a-1=4不存在,输出4
*
*/

}

}
请各位大神看一下
展开
 我来答
天海行者
2012-09-21 · TA获得超过105个赞
知道答主
回答量:208
采纳率:0%
帮助的人:88.2万
展开全部
数据库的算法实现是最快速的 这样的遍历list效率很差

这些算法都是在
List<Integer> list =dao.xxxxxx;//从数据库中获取的一个list集合

之前 完成 最好

这样查询list的时候 直接查询指定位置的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3433968
2012-09-21
知道答主
回答量:10
采纳率:25%
帮助的人:3.1万
展开全部
int a = r.nextInt(50);
int i = check(a,list);
System.out.println(i);
}
static int check(int a,List list){
for(Integer i:list){
while(i==a){
a=a-1;
check(a,list);
}
}
return a;
}
递归调用自己写的的函数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sqltime
2012-09-21
知道答主
回答量:31
采纳率:100%
帮助的人:3万
展开全部
List<对象> list=dao.xxxxx;
Random r=new Random();
int a=r.nextInt(50);
for (对象 d : list) {
if(a!=d.getId()){
System.out.println(d.getId);
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友a3958dc
2012-09-21 · 超过12用户采纳过TA的回答
知道答主
回答量:43
采纳率:100%
帮助的人:16.5万
展开全部
if(i==a)
a=a-1;

continue;
else
System.out.println(i);

大概这样吧 没有调试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
封七叔
2012-09-21
知道答主
回答量:21
采纳率:0%
帮助的人:8.3万
展开全部
将判断的函数独立出来,用递归可以实现。
追问
能不能简单写一下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式