我今天在Android Studio支持注释上阅读了此article,并在我的代码中开始使用这些注释,这是一个示例:
public final static class GoogleMapsZoomLevel {
public static final int MIN_ZOOM_LEVEL = 0;
public static final int MAX_ZOOM_LEVEL = 21;
..
public GoogleMapsZoomLevel(@IntRange(from=MIN_ZOOM_LEVEL, to=MAX_ZOOM_LEVEL) int zoomLevel) {
if (zoomLevel < MIN_ZOOM_LEVEL || zoomLevel > MAX_ZOOM_LEVEL) {
throw new IllegalArgumentException(ERROR_ZOOM_LEVEL_OUT_OF_BOUNDS);
}
this.zoomLevel = zoomLevel;
}
..
}
在我的代码中,我有一个在其构造函数中接受double
值的类,但没有@DoubleRange注释。我使用@FloatRange还是什么都没有? long
值的相同问题
答案 0 :(得分:5)
实际上,@ FloatRange的文档说明:
Denotes that the annotated element should be a float or double in the given range
@IntRange的类似情况
Denotes that the annotated element should be an int or long in the given range