首先,我是学JAVA快三个月,我发帖不是自己没思考,而是真的不知道该怎么写?类,这个概念是有,但在程序中我就不知道该怎么用了,希望在几个题目中,慢慢的去认识Java,去学习Java.但感觉自己对Java不怎么会用.一旦让我做点什么就有点迷茫了 问题又来了,如下: 题一:有100篇帖子,用一个随机整数表示帖子的跟帖树,页面只显示10个跟帖数的帖子.如何才能显示出来呢? 我个人的理解是:假设有100个帖子,每个帖子的跟帖数用一个随机数表示,最后用system.out.println()显示出跟帖数前10的帖子名称和跟帖数目. 
但如何选出前10个帖子书,随机数又应该怎么写?不大清楚. 题二:100个用户的论坛,现在根据积分的排名,分别赠予前三名20%,15%,10%的积分. 我个人理解是:从100个用户的随机产生的积分,假如,前三名的积分为500 480 470 ,那么显示的赠予积分应该是500*0.20 480*0.15 470*0.10,当然要现实用户名. 我虽然有些想法,但还是写不出程序.能写出来的老师,能不能发表下你们的看法.

解决方案 »

  1.   

    看下apache 的 common.lang 包 里面有生成随机数的方法
      

  2.   

    import java.util.*;public class Article
        implements Comparable
    {
        public int replyCount = 0;
        public int getReplyCount()
        {
            return replyCount;
        }    public Article(int v)
        {
            replyCount = v;
        }    public int compareTo(Object obj)
        {
            Article a = (Article) obj;
            if (replyCount == a.getReplyCount())
            {
                return 0;
            }
            if (replyCount > a.getReplyCount())
            {
                return 1;
            }
            return -1;
        }    public static void main(String[] args)
        {
            List list = new ArrayList();
            Random r = new Random();
            for (int i = 0; i < 100; i++)
            {
                list.add(new Article(r.nextInt(500)));
            }
            Collections.sort(list);
            for (int i =99; i > 89; i--)
            {
                System.out.println( ( (Article) list.get(i)).getReplyCount());
            }
        }}看不懂的话我也没办法了。
      

  3.   

    题一:有100篇帖子,用一个随机整数表示帖子的跟帖树,页面只显示10个跟帖数的帖子.如何才能显示出来呢? 
    我个人的理解是:假设有100个帖子,每个帖子的跟帖数用一个随机数表示,最后用system.out.println()显示出跟帖数前10的帖子名称和跟帖数目. 
    但如何选出前10个帖子书,随机数又应该怎么写?不大清楚. 
    =====================
    1)确定类:从这基本可以知道所有的数据都来源于"帖子"(Article),这个是要设计的类。
    2)确定类的数据成员:有什么要表现出来的呢?"名称"和"跟帖数目",你已经想到了。现实的应该还有作者,内容等等。这里就这两项可以满足要求了。
    3)确定类的行为(方法):1、构造函数;2、显示函数 ;(3、比较函数——也可以用跟帖数目的get方法的)
        这个类基本设计完了;然而我们发现它没有实现列出top 10的功能。哦,原来我们还需要一个控制功能的类(Controller)来完成这功能(用Article这个类实现这个功能也不是说不行,但是这符合面向对象的思想么?:帖子里完成了N个帖子的排序、演示……)。同时发现top 10需要排序才可以实现,所以要加上个可以判断帖子大小或者返回本身大小数目的函数,所以加上了上面的方法3。
    最后,设计出来的结构差不多是这样的:
    -------------Article.java-------------
    class Article{
        private String title; //名称
        private int iNum; //跟帖数目    public Article(String t,int i){//构造函数
            //这里给数据赋上值
        }
        public Article(){    }//无参构造函数
        public void display(){
        //这里打印这个帖子    }    public boolean compareTo(Object obj){
        //这里写上比较的方法    }
    }--------------------Controller.java------------class Controller{
       
        public static void main(String[] args){
              //1、为100个帖子分配空间          //2、排序          //3、打印top 10              }
    }
      

  4.   

    ls的
    分析的很好哦~~
    up一下~
      

  5.   

    楼主啊
    我仔细看了遍 怎么觉得像sql题的 
    纳了那个怪闷了