Должно ли быть максимальное значение в диапазоне включительно?
Когда я работаю с методами, которые на вход принимают некие диапазоны значений, всегда остается неуверенность в том, является ли максимальное значение включительно.
Например, такой метод:
/**
* Нарисовать квадрат.
*/
public void drawSquare(int minX, int minY, int maxX, int maxY, Color color) {
...
}
Этот метод рисует в окне квадрат. Параметры minX и minY означают минимальную точку квадрата. Параметры maxX и maxY означают максимальную точку для рисования квадрата, но включительно ли?
Если я захочу нарисовать квадрат длиною 10 пикселей, какой вариант api предпочтительнее (length = 10):
drawSquare(x, y, x + length, y + length, RED)- не включительноdrawSquare(x, y, x + length - 1, y + length - 1, RED)- включительно, приходится делать -1, чтобы не закрасило 11-й пиксель
Метод drawSquare это лишь пример. Меня интересует, какой подход считается более правильным. Какой подход использовать при создании своих методов.