惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
Y
Y Combinator Blog
Engineering at Meta
Engineering at Meta
D
Docker
GbyAI
GbyAI
aimingoo的专栏
aimingoo的专栏
大猫的无限游戏
大猫的无限游戏
腾讯CDC
P
Proofpoint News Feed
A
About on SuperTechFans
WordPress大学
WordPress大学
Stack Overflow Blog
Stack Overflow Blog
Google DeepMind News
Google DeepMind News
C
Check Point Blog
Microsoft Security Blog
Microsoft Security Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
L
LangChain Blog
MyScale Blog
MyScale Blog
博客园 - 三生石上(FineUI控件)
Hugging Face - Blog
Hugging Face - Blog
Microsoft Azure Blog
Microsoft Azure Blog
N
Netflix TechBlog - Medium
G
Google Developers Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻

轶哥博客

blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog
blog
2016-04-19 · via 轶哥博客

  三个简单的JAVA练习题。

  1. 建立一个元素类型java.util.Date的线性表,并在表中加入3个日期对象。
  2. 定义一个代表人员的类Person,含有三个数据成员(姓名,性别,年龄)。用TreeSet<Person>存储三个对象。
  3. 产生0-99的随机数100个,去掉重复的,还有多少个相互不同的数?

  注意:因为虚拟机版本问题,在Win和Mac平台中有一小点不同。虽然Java是跨平台的,但不同版本的Java虚拟机对语法的要求还是有略微区别,理论上直接编译都是可以的,但强迫症的轶哥见不得IDE报错。

Win平台Main.java:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;

public class Main {

    public static void main(String[] args) throws ParseException {
        //第一题
        ArrayList&lt;Date&gt; list_one = new ArrayList&lt;&gt;();
        list_one.add(new Date());//添加当前日期
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        String strDate = "2016-4-19";
        Date date = sdf.parse(strDate);//按照格式添加指定字符串日期
        list_one.add(date);
        SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        list_one.add(sdf2.parse("2016-4-19 14:09:32"));//添加包含时分秒的日期
        System.out.println(list_one);

        //第二题
        TreeSet&lt;Person&gt; t = new TreeSet&lt;&gt;();
        t.add(new Person("张三", "男", 15));
        t.add(new Person("李四", "女", 35));
        t.add(new Person("王五", "男", 5));
        System.out.println(t);

        //第三题
        Random r = new Random();
        List&lt;Integer&gt; list = new ArrayList&lt;&gt;();
        int i;
        while (list.size() &lt;= 100) {
            i = r.nextInt(99);//生成0-99的随机数
            //if(!list.contains(i)){ 如果这样判断,可以在添加的时候就去除重复的数
            list.add(i);
            //}
        }
        List&lt;Integer&gt; listTemp = new ArrayList&lt;&gt;();
        Iterator&lt;Integer&gt; it = list.iterator();
        while (it.hasNext()) {
            int a = it.next();
            if (listTemp.contains(a)) {
                it.remove();
            } else {
                listTemp.add(a);
            }
        }
        System.out.println("去掉重复的还剩下:" + list.size() + "个");
    }
}

Mac平台Main.java:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;

public class Main {

    public static void main(String[] args) throws ParseException {
        //第一题
        ArrayList&lt;Date&gt; list_one = new ArrayList&lt;Date&gt;();
        list_one.add(new Date());//添加当前日期
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        String strDate = "2016-4-19";
        Date date = sdf.parse(strDate);//按照格式添加指定字符串日期
        list_one.add(date);
        SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        list_one.add(sdf2.parse("2016-4-19 14:09:32"));//添加包含时分秒的日期
        System.out.println(list_one);

        //第二题
        TreeSet&lt;Person&gt; t = new TreeSet&lt;Person&gt;();
        t.add(new Person("张三", "男", 15));
        t.add(new Person("李四", "女", 35));
        t.add(new Person("王五", "男", 5));
        System.out.println(t);

        //第三题
        Random r = new Random();
        List&lt;Integer&gt; list = new ArrayList&lt;Integer&gt;();
        int i;
        while (list.size() &lt;= 100) {
            i = r.nextInt(99);//生成0-99的随机数
            //if(!list.contains(i)){ 如果这样判断,可以在添加的时候就去除重复的数
            list.add(i);
            //}
        }
        List&lt;Integer&gt; listTemp = new ArrayList&lt;Integer&gt;();
        Iterator&lt;Integer&gt; it = list.iterator();
        while (it.hasNext()) {
            int a = it.next();
            if (listTemp.contains(a)) {
                it.remove();
            } else {
                listTemp.add(a);
            }
        }
        System.out.println("去掉重复的还剩下:" + list.size() + "个");
    }
}

不分平台 Person.java :

class Person implements Comparable&lt;Person&gt;{
    private String name;
    private String sex;
    private int age;

    Person(String name, String sex, int age){
        this.name = name;
        this.sex = sex;
        this.age = age;
    }

    public String toString(){
        return this.name + " " + this.sex + " " + this.age;
    }

    @Override
    public int compareTo(Person o) {
        return 1;
    }
}

执行结果截图:

JAVA代码