在SQL数据库中的表的结构为:UID         页面1       页面2     页面3  页面4   //nRow=1
1            5          6        2      1     //nRow=2
2            10         2        4      1     //...
3            9          1        5      8     //...
4            3          2        1      1     //...
nCol=1      nCol=2    nCol=3    ...     ...
表里的数据为:用户ID 以及每个页面访问的次数
取得行数nRow,列数nCol
定义一个数组a[nRow][nCol]里面存的是UID号,以及页面访问的次数
也就是第一行可以不要
输出的结果为:
a[2][1] = 2  a[2][2] = 10所有的都要输出

解决方案 »

  1.   

    你的意思是指 求X,Y,其中,X为访问的人,Y为访问某一页次数中最大的那个是不?
    int mi=1,mj=1;
    int tmp= a[mi][mj];
    for(int = 1;i<a.length;i++){
      for(int = 1;j<a[1].length;j++){
          if(tmp<a[i][j]){
             mi = i;
              mj = j;
               tmp = a[i][j];
          }  
      }
    }
    /////////////////
     a[mi][0];
     a[mi][mj];
     这两个是你要的
      

  2.   

    得到ResultSet之后while一下,然后一条数据代表1维数组,多条就成了2维数组~!
      

  3.   

    mj,j不变,i,mi =0,应该能满足你的要求
    ...............
    那个K值的不也差不多啊
      

  4.   


    //用户个数
    PrepareStatement ps=con.prepareStatement("SELECT COUNT(*) FROM table");
    ResultSet rs=ps.executeQuery();
    rs.next();
    int numOfUsers=rs.getInt(1);
    int [][]array=new int[numOfUsers][NUM_OF_PAGES+1];ps=con.prepareStatement("SELECT * FROM table");
    rs=ps.executeQuery();
    int count=0;
    while(rs.next())
    {
        array[count][0]=rs.getInt(1);             //UID
        for(int i=0;i<NUM_OF_PAGES;i++)           //访问次数
        {
            array[count][i+1]=rs.getInt(i+2);
        }
        count++;
    }
    //close
      

  5.   

    遍历
    //ResultSet rs=?????
    List<String[]> rlist=new ArrayList<String[]>();//类型
    int columnCount=rs.getMetaData().getColumnCount();

    while (rs.next()) {
    String[] arr=new String[columnCount]; 
    for (int i = 0; i < columnCount; i++) {
    arr[i]=rs.getString(i+1);
    }
    rlist.add(arr);
    } String[][] rsArray=new String[rlist.size()][columnCount];

    rlist.toArray(rsArray);

    for (int i = 0; i < rsArray.length; i++) {
    for (int j = 0; j < rsArray[i].length; j++) {
    System.out.print(rsArray[i][j]+"   ");
    }
    System.out.println();
    }