首页 > 代码库 > Flips测试类(page43)

Flips测试类(page43)

测试用例:所用java类: StdOut,StdIn , Counter, StdRandom,

public class Flips {        public static void main(String[] args) {                int T = Integer.parseInt(args[0]);        Counter heads = new Counter("heads");        Counter tails = new Counter("tails");                for (int t = 0; t < T; t++)             if(StdRandom.bernoulli(0.5))                heads.increment();            else tails.increment();        StdOut.println(heads);        StdOut.println(tails);        int d = heads.tally() - tails.tally();        StdOut.println("delta : " + Math.abs(d));    }}

打印结果:
public class Counter implements Comparable<Counter> { private final String name; // counter name private int count = 0; // current value /** * Initializes a new counter starting at 0, with the given id. * @param id the name of the counter */ public Counter(String id) { name = id; } /** * Increments the counter by 1. */ public void increment() { count++; } /** * Returns the current count. */ public int tally() { return count; } /** * Returns a string representation of this counter */ public String toString() { return count + " " + name; } /** * Compares this counter to that counter. */ public int compareTo(Counter that) { if (this.count < that.count) return -1; else if (this.count > that.count) return +1; else return 0; }}

public class Flips {        public static void main(String[] args) {                Counter c1 = new Counter("ones");        c1.increment();        Counter c2 = c1;        c2.increment();        StdOut.println(c1);    }}
//赋值语句的区别: 复制的是引用类型还是原始数据类型。

打印结果:

2 ones

 

Flips测试类(page43)