by Anonymous » 13 Feb 2025, 05:55
Sagen Sie also, ich habe eine Klasse: < /p>
Code: Select all
public class Clazz {
final String someAttribute;
public String getSomeAttribute() {
return someAttribute;
}
public void setSomeAttribute(String someAttribute) {
this.someAttribute = someAttribute;
}
}
< /code>
Und ich habe das Attribut in der Klasse bedingt festgelegt. < /p>
Clazz someObject = new Clasz();
if(someCondition) {
someObject.setSomeAttribute(“someString”);
} else {
// someAttribute is not set, so it is null.
}
< /code>
Wenn ich versuche, das Attribut über eine MAP () -Transformation zu erhalten und es in einer ternären Operation zu verwenden Obwohl es sein kann. < /p>
Optional.ofNullable(someObject)
.map(Clazz::getSomeAttribute)
.map(someAttribute->Objects.notNull(someAttribute)) ? “string1” : string2)
.orElse(“”);
Angesichts der Tatsache, dass SomeatTribute bedingt eingestellt ist, ist es möglich, dass es null ist. Aber ich bekomme eine Kompilierungszeitwarnung, die besagt, dass Objekte. Notnull (someattribute) immer falsch ist, d. H. Someattribute ist niemals null. Warum?
Danke im Voraus!
Sagen Sie also, ich habe eine Klasse: < /p>
[code]public class Clazz {
final String someAttribute;
public String getSomeAttribute() {
return someAttribute;
}
public void setSomeAttribute(String someAttribute) {
this.someAttribute = someAttribute;
}
}
< /code>
Und ich habe das Attribut in der Klasse bedingt festgelegt. < /p>
Clazz someObject = new Clasz();
if(someCondition) {
someObject.setSomeAttribute(“someString”);
} else {
// someAttribute is not set, so it is null.
}
< /code>
Wenn ich versuche, das Attribut über eine MAP () -Transformation zu erhalten und es in einer ternären Operation zu verwenden Obwohl es sein kann. < /p>
Optional.ofNullable(someObject)
.map(Clazz::getSomeAttribute)
.map(someAttribute->Objects.notNull(someAttribute)) ? “string1” : string2)
.orElse(“”);
[/code]
Angesichts der Tatsache, dass SomeatTribute bedingt eingestellt ist, ist es möglich, dass es null ist. Aber ich bekomme eine Kompilierungszeitwarnung, die besagt, dass Objekte. Notnull (someattribute) immer falsch ist, d. H. Someattribute ist niemals null. Warum?
Danke im Voraus!