null 일 경우 나는 정말로 지쳐있다. 검사, resp. 또한이를 위해보다 구성 가능한 시나리오를 원합니다. 예를 들어 설명해 드리겠습니다.null이 아니거나 Java에 설정되지 않은 경우 할당
저는 getter()
입니다. 두 경우 모두 null
또는 '0'
이 반환 될 수 있습니다. setter()
은 getter()
을 전달하여 호출하면 안됩니다.
getter()
및
setter()
정말 긴 메서드 호출하고 나는이에 대한 도우미 변수를 도입해야 특히,
if(getter() != null && !getter().equals('0')) setter(getter());
이 그러나 정말 날 anoys입니다.
나는 매개 변수 정확히 같은 일을
ifNotSet(getter(), setter(), new Object[null, '0']);
와 방법에 대해 생각하고있다. 이
- 게터은 어디 방법은 방법으로 전화를
setter(getter)
경우 조건 적용되지 않음 - 조건 - 실행할 방법에 대해
getter()
의 평가에 적용해서는 안되는 조건
처음에는 이것이 복잡해 보이지는 않지만 그렇습니다! 누구든지이 문제 또는 어떤 종류의 구현에 대한 해결책을 알고 있습니까?
감사합니다.
내가 너희들의 의견을 한 후,이 문제에 좀 더 노력하고 다음
private boolean ns(Object[] condition, Object getter) {
boolean ret = false;
for (Object object : condition) {
if(getter) equals or == ??
}
return true;
}
Object[] cond = new Object[] { null, "0" };
Object a;
if (ns(cond, a = getter()))setter(a);
음에 대해 알게 된 한
업데이트,이 것 같았다 적어도 할 일이 많은 경우 솔루션입니다. 그러나 ns()
방법을 살펴보면 ... 들어오는 조건에 대한 질문은 ==
또는 equals
을 사용하여 비교를 할 것인가입니다!
"null 인 경우 모든 검사를 수행하는 데 정말로 지쳤습니다."- Groovy와 그 "안전한 탐색"연산자 ("?")를 살펴보십시오. http://groovy.codehaus.org/Operators#Operators-SafeNavigationOperator – tbsalling
왜 isNullOrZero (x) 메소드를 만들지 않습니까? 그래서,() isNullOrZero (getter()) setter (getter());' – vikingsteve
=> Option type에서 getOrElse 메소드를 가져온 스칼라 덕분에 :) ... 자바가 가지고있는 것처럼 null 객체도없고 추한 코드도 없다. ;) – Mik378