gpt4 book ai didi

java - 必须有更好的方法来写这个

转载 作者:行者123 更新时间:2023-11-29 06:23:59 25 4
gpt4 key购买 nike

public static boolean isValidCoordinate(Coordinate point) {
Point map = point.mapCoordinates, tileSet = point.tileSetCoordinates, tile = point.tileCoordinates, pixel = point.pixelCoordinates;
if (map != null && map.x >= 0 && map.y >= 0) {
if (tileSet != null) {
if (tileSet.x >= 0 && tileSet.y >= 0) {
if (tile != null) {
if (tile.x >= 0 && tile.y >= 0) {
if (pixel != null) {
if (pixel.x >= 0 && pixel.y >= 0) {
return true;
}
else {
return false;
}
}
else {
return true;
}
}
else {
return false;
}
}
else {
return true;
}
}
else {
return false;
}
}
else {
return true;
}
}
else {
return false;
}
}

坐标类包含 4 个 Point 对象,代表一组唯一的坐标。每组坐标都需要为正数。 mapCoordinates 不能为 null,但其他 Points 可以,只要它们之后的所有内容都为 null,并且在此列表中它们之前的所有内容都是正数:mapCoordinates、tileSetCoordinates、tileCoordiantes、pixelCoordinates。谢谢

最佳答案

当然有。使用方法保持干燥:

boolean isValid(Point p) {
return p == null || (p.x >= 0 && p.y >= 0);
}

boolean isValid(Coordinate c) {
return isValid(c.mapCoordinates)
&& isValid(c.tileSetCoordinates)
&& isValid(c.tileCoordinates)
&& isValid(c.pixelCoordinates);
}

是的,调用 Point coordinate 类型的变量和 Coordinate point 类型的变量很可能让读者感到困惑。

关于java - 必须有更好的方法来写这个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6161356/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com