File: T8071432.java

package info (click to toggle)
openjdk-11 11.0.4%2B11-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 757,028 kB
  • sloc: java: 5,016,041; xml: 1,191,974; cpp: 934,731; ansic: 555,697; sh: 24,299; objc: 12,703; python: 3,602; asm: 3,415; makefile: 2,772; awk: 351; sed: 172; perl: 114; jsp: 24; csh: 3
file content (50 lines) | stat: -rw-r--r-- 1,240 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
/*
 * @test /nodynamiccopyright/
 * @bug 8071432 8069545
 * @summary structural most specific and stuckness
 * @compile/fail/ref=T8071432.out -XDrawDiagnostics T8071432.java
 */

import java.util.Arrays;
import java.util.Collection;

class T8071432 {

    static class Point {

        private double x, y;

        public Point(double x, double y) {
            this.x = x;
            this.y = y;
        }

        public double getX() {
            return x;
        }

        public double getY() {
            return y;
        }

        public double distance(Point p) {
            return Math.sqrt((this.x - p.x) * (this.x - p.x) +
                             (this.y - p.y) * (this.y - p.y));
        }

        public double distance() {
            return Math.sqrt(this.x * this.x + this.y * this.y);
        }

        public String toString() {
            return "(" + x + ":" + y + ")";
        }
    }

    public static void main(String[] args) {
        Collection<Point> c = Arrays.asList(new Point(1.0, 0.1));
        System.out.println("------- 1 ---------------");
        System.out.println(c.stream().reduce(0.0,
                                            (s, p) -> s += p.distance(), (d1, d2) -> 0));
    }
}