zoukankan      html  css  js  c++  java
  • asp.net获取数据随机显示(原创)

      大家每天玩微博的时候,微博广播内容上面有一项"可能认识的人",每次刷新页面的时候,那里面的数据都会随机的变化,今天就与大家分享下我写一个通用对于从数据库里调用的数据随机显示的算法,主要是mark一下。呵呵...

      直接贴代码。

                Random random = new Random();
                DataTable dt = new DataTable();
                StringBuilder sb = new StringBuilder();
                //int count = dt.Rows.Count;
                int count = 20;//最大索引 记录条数
                int times = 2;//记录循环次数
                if (count <= 6)//假设我要取6条数据
                {
                    for (int i = 0; i < count; i++)
                    {
                        sb.Append("" + i.ToString() + ",");//需要拼接的字符串
                    }
                }
                else
                {
                    string strindex = "";//用来比较不重复字符串
                    int n = 0;//循环计数
                    int islast = 0;//最后一次索引值                
                    for (int i = 0; i < times; i++)//循环的次数如何来控制
                    {
                        int index = random.Next(0, count);
                        if (i == 0)
                        {
                            n++;
                            strindex += index.ToString() + ",";
                            sb.Append(index.ToString() + ",");//需要拼接的字符串
                            islast = index;
                        }
                        else
                        {
                            if (islast != index)
                            {
                                string[] strlast = strindex.Split(',');
                                int m = 0;
                                for (int j = 0; j < strlast.Length - 1; j++)//防止重复
                                {
                                    if (Convert.ToInt16(strlast[j]) == index)
                                    {
                                        m++;
                                        break;
                                    }
                                }
                                if (m == 0)
                                {
                                    n++;
                                    strindex += index.ToString() + ",";
                                    sb.Append(index.ToString() + ",");//需要拼接的字符串
                                    islast = index;
                                }
                            }
                        }
                        if (n == 5)
                        {
                            break;
                        }
                        times++;
                    }
                }
                //看看结果
                ClientScript.RegisterStartupScript(typeof(Page), "", "alert('" + sb.ToString() + "times:" + times + "')", true);

      PS:Tandy Tang祝大家写代码写的愉快!

    作者:大神神风
    出处:http://www.cnblogs.com/tandyshen/
    感谢您点【推荐】 ,祝您事业有成,生活愉快,健康美丽。
  • 相关阅读:
    Linux 学习
    mac 驱动
    用wubi安装ubuntu
    Eclipse安装Svn
    XML学习
    java集合类总结
    CVS学习
    [转载]java集合类总结
    Servlet学习
    JSP介绍
  • 原文地址:https://www.cnblogs.com/tandyshen/p/random.html
Copyright © 2011-2022 走看看