실효 문제

975 단어 자바
최근 에 bug 를 만 났 습 니 다.친구 목록 에 자신 이 있 습 니 다.이 니 마 는 어떤 상황 입 니까?나 는 내 가 분명히 판단 을 한 것 으로 기억한다.
userId=vo.getUserId1()==customerId?vo.getUserId2():vo.getUserId1();
            왜"=="은 효과 가 없 습 니까?그리고 때로는 영리 하고 때로는 영리 하지 못 하 며,태 니 마 는 이상 하 다.
            나중에 한참 동안 조정 한 후에 야 customerId 와 userId 가 모두 Long 형 이라는 것 을 알 게 되 었 습 니 다.Long 유형 은 대상 이 고 대상 은'='으로 직접 비교 할 수 없습니다.수정 하면 됩 니 다.
userId=vo.getUserId1().equals(customerId)?vo.getUserId2():vo.getUserId1();
  :userId=vo.getUserId1().longValue()==customerId.longValue()?vo.getUserId2():vo.getUserId1();
 
   
  
            当然,上面方法都需要判断是否为null,不然会报空指针异常哦,推荐大家使用google的Guava工具包有很多好用的方法( http://ifeve.com/google-guava/),就可以直接这么写不用判断是否为null了: 
  
userId=Objects.equal(vo.getUserId1(), customerId)?vo.getUserId2():vo.getUserId1();

           내 가 이런 저급한 실 수 를 하 다 니,묵묵히 벽 구석 에 가서 생각 할 수 밖 에 없다.

좋은 웹페이지 즐겨찾기