基本上我有一个由三个参数定义的区域。 有时我可以指定两个或有时我可以指定三个:
private void create_region(String UUID, String Major, String Minor) {
region = new Region("my-beacon-region",
Identifier.parse(UUID),
Identifier.parse(Major),
Identifier.parse(Minor));
}
如果我将一个空字符串作为Minor传递,例如程序崩溃。 我该如何解决?如果我喜欢这样,那就行了。
region = new Region("my-beacon-region",
Identifier.parse(UUID),
Identifier.parse(Major),
null);
谢谢!
答案 0 :(得分:0)
你可以在java中为同一个对象创建许多constractor。我试着创建一个只有两个params的约束器,你自己将第三个初始化为null。然后你可以通过只传递前两个参数
来调用它答案 1 :(得分:0)
检查值是否为空,如果是,请跳过对Identifier.parse(...)
:
private void create_region(String UUID, String Major, String Minor) {
Identifier Id1 = null;
Identifier Id2 = null;
Identifier Id3 = null;
if (UUID != null) {
Id1 = Identifier.parse(UUID);
}
if (Major != null) {
Id2 = Identifier.parse(Major);
}
if (Minor != null) {
Id3 = Identifier.parse(Minor);
}
region = new Region("my-beacon-region",
Id1,
Id2,
Id3);
}