package xmp_func;

import java.awt.geom.Ellipse2D;
import java.util.Comparator;
import java.util.Arrays;

public class MyEllipseComp_Lambda {

	public static void main(String[] args) {

		Ellipse2D.Double[ ] circles = {
			new Ellipse2D.Double(4, 7, 12, 12),
			new Ellipse2D.Double(5, 11, 16, 16),
			new Ellipse2D.Double(2, 65, 10, 10),
			new Ellipse2D.Double(7, 12, 1, 1),
			new Ellipse2D.Double(12, 6, 15, 15),
			new Ellipse2D.Double(34, 2, 14, 14) } ;

		Arrays.sort(circles, (arg0,arg1) -> {
			int retVal = 0;
			double area0 = arg0.width*arg0.height;
			double area1 = arg1.width*arg1.height;
			if(area0 < area1) retVal = -1;
			else if(area0 > area1) retVal = 1;
			return retVal;
		} );

		for(Ellipse2D.Double e : circles) { System.out.print(e.width + " "); }
		System.out.println();

	}

}