Есть три точки, A(x1, y1), B(x2, y2), C(x3, y3), нужно узнать принадлежат ли они одной прямой, так же есть enum с видами функций, пока там только LINE(Линейная), а так же есть функциональный интерфейс, в котором есть метод function, и в зависимости от выбранной функции, высчитавается, принадлежат ли точки к одной прямой, но есть проблема, не знаю как написать решение на java, вот код:
//functionType.java
public enum functionType{
LINE
}
//Coordinates.java
public class Coordinates{
private final int x, y;
public Coordinates(int x, int y){
this.x = x;
this.y = y;
}
public int getX(){
return x;
}
public int getY(){
return y;
}
//Вот в этом методе проблема:
public boolean canMove(Coordinates point1, Coordinates point2, Coordinates point3, functionType type){
if(type == functionType.LINE){
Function function = (Coordinates point1, Coordinates point2, Coordinates point3) ->{
}
}
}
//Function.java
public interface Function{
public boolean function(Coordinates point1, Coordinates point2, Coordinates point3);
}
Как реализовать метод который в лямбда-выражение? Зарание спасибо!
@pavel Не хочу надоедать, но проблема в том, что я не понимаю как из этого уравнения мне получить булеан) Сори за тупость)
return (x1-x2)*(y1-y3)==(x1-x3)*(y1-y2);
Продвижение своими сайтами как стратегия роста и независимости