首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >抽奖比赛练习

抽奖比赛练习
EN

Stack Overflow用户
提问于 2012-04-04 04:51:11
回答 3查看 675关注 0票数 1

我一直在忙于一个练习,我需要将中奖彩票号码(它是生成的)与数据库表中现有的彩票号码进行比较。

我设法遍历数据库中的所有号码,然后找到与中奖号码集匹配的号码,但我正在努力确定匹配是在哪组彩票号码中找到的。

这些数字分别放在每个数据库列中。在这里,我检索每行中的值。

代码语言:javascript
复制
ResultSet set = state.executeQuery("SELECT * FROM numberLotto");
    while(set.next())
    {
                String[]row = new String[7]; 
                row[0] = set.getString(1);                   
                row[1] = set.getString(2);
                row[2] = set.getString(3);
                row[3] = set.getString(4);
                row[4] = set.getString(5);
                row[5] = set.getString(6);
                row[6] = set.getString(7);
                entries.add(row);
            }
String[][]listOfNumbers = entries.toArray(new String[entries.size()][7]);

然后,我循环遍历listOfNumbers并将所有值与winningNumber的值进行比较。

代码语言:javascript
复制
Object[]winningNumber = lottoDrawString.toArray();   

        for (int i=0; i < listOfNumbers.length; i++)
        {
            for (int j=0; j < listOfNumbers[i].length; j++)
            {
                for(int k = 0; k < winningNumber.length; k++)
                {
                    System.out.println(listOfNumbers[i][j]);

                    if(listOfNumbers[i][j].equals(winningNumber[k]))
                    {
                        System.out.println("There is a match " + listOfNumbers[i][j] + " and " + winningNumber[k]);
                    }
                }

            }
        }

如何检索找到匹配项的行?

亲切的问候

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-04-04 05:00:18

为什么不直接做呢?

代码语言:javascript
复制
SELECT * FROM numberLotto WHERE FirstNumber = n1 AND SecondNumber = n2 AND ...

因此,为什么不将彩票号码作为七位数字符串存储在数据库中呢?

票数 2
EN

Stack Overflow用户

发布于 2012-04-04 05:00:38

一个想法是添加行号作为表字段,检索它,而不是创建和检查数字,用一个对象来完成,比方说Loterry。

班级彩票

{ int line,value;

}

您检查值字段,如果它适合您的检查,返回行。希望它能有所帮助:)

票数 0
EN

Stack Overflow用户

发布于 2012-04-04 05:03:19

你可以在不做太多“编程”的情况下完成搜索。编写一个查询来为您完成此操作:

String query = "SELECT * FROM numberLotto WHERE number = " + winningNumber

上面假设您的彩票号码存储在标记为"number"的字段中。您还可以使用ANDOR子句搜索多个匹配项。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10001186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档