2016-02-05 3 views
-1

Я пытаюсь вернуть этот метод:Java: несовместимый тип в аргументе метода

private int x; 
private int y; 
private double pointOne; 
private double pointTwo; 


public Point (int newX , int newY) 
{ 
    this.x = newX; 
    this.y = newY; 
} 


public Point halfwayTo (Point other) 
{ 
    pointOne = ((this.x + other.x)/2); 

    pointTwo = ((this.y + other.y)/2); 

    return new Point ("(" + pointOne + "," + pointTwo + ")"); 
} 

новой точка, которая находится на полпути из указанных двух точек (середина формулы).

Однако, я получаю сообщение об ошибке «несовместимые типы: строка не может быть преобразована в точку».

Мне нужно вернуть две новые точки как (X, Y).

ответ

3

Единственный конструктор Point с одним параметром ожидает объект Point.

Вы передаете строку: "(" + pointOne + "," + pointTwo + ")"

отсюда исключение с сообщением «строка не может быть преобразована в точку».

Обратите внимание, что есть constructor, которые ожидают два ввода, вы, вероятно, захотите использовать этот вариант.


В соответствии с вашими редактирования, вы используете пользовательский Point объект.

Проверьте свои импортные поставки, возможно, вы используете java.awt.Point, пока думаете, что используете свой собственный объект Point.

+0

Nvm, я смотрел на свой конструктор Parameterized. У меня есть другой конструктор, который имеет только один параметр. Хорошо, я получил то, что вы сейчас пытаетесь сказать. Спасибо вам за помощь. – Paincakes

Смежные вопросы