파이어베이스에서 리스트 안에 리스트를 넣어서 저장하려고 하는데 저장을 못하겠어요. 도와주세요 ㅜㅜ

조회수 2014회

MainActivity :

public List<Riding> riding_list = new ArrayList<>();
public List<RidingList> riding_big_list = new ArrayList<>();

Riding riding2 = new Riding(latLng.latitude,latLng.longitude);
RidingList ridinglist = new RidingList(Time,riding2);

SimpleDateFormat sdfNow = new SimpleDateFormat("HH:mm:ss");
Date date = new Date(System.currentTimeMillis());
String stringdate = sdfNow.format(date);
Time = stringdate;
SimpleDateFormat year = new SimpleDateFormat("yyyy");
Year = year.format(date);

SimpleDateFormat month = new SimpleDateFormat("MM");
Month = month.format(date);

SimpleDateFormat day = new SimpleDateFormat("dd");
Day = day.format(date);

ridinglist.setTime(Time);
ridinglist.setList(riding2);
riding_big_list.add(ridinglist);
Log.e(TAG, "ridinglist.time : " +  ridinglist.time + "      riding_big_list.size : " + riding_big_list.size());
Log.e(TAG, "ridinglist.list : " + ridinglist.getList() + "      riding2.latitude : " + riding2.latitude + "      riding2.longitude : " + riding2.longitude);

mDatabase.child("users").child("TEST").child(Year).child(Month).child(Day).child(ridinglist.time).setValue(ridinglist.list);

java.lang.NullPointerException: Attempt to invoke interface method 'boolean java.util.Iterator.hasNext()' on a null object reference

이 에러가 떠서 그러는데요. 클래스 2개를 만들어서 하나에는 좌표값을 리스트로 저장을 했구요 다른 하나에는 좌표값을 리스트로 저장한것을 저장하고 거기에 시간까지 같이 저장을 했는데... 무엇을 잘못했는지 모르겠습니다. 구글 찾아봐도 다 했는데 모르겠어요 ㅜㅜ 고수님들 부탁드려요!!

저번에 한로니로니님이 답변을 달아주셨는데 정말 감사했습니다. 관심가져주시는분들 감사합니다.

  • 찍으신 로그값에 null 값이 있는지 확인해보셨나요? 김선우 2016.11.16 10:11
  • 네. 확인은 해봤는데 size 로 확인해도 있었고 클릭할때마다 값이 있었습니다. ㅜㅜ 알 수 없는 사용자 2016.11.16 10:15
  • list 안의 값을 찍으려고 riding2.latitude 라고 해봤는데 다 뜨길래.. ㅜㅜ 알 수 없는 사용자 2016.11.16 11:41
  • iterator 쓰는것은 없습니다. 잘 몰라서..쓰질 못합니다 ㅜ 알 수 없는 사용자 2016.11.16 11:41
  • ridinglist.getList() 와 ridinglist.list 의 차이가 있나요? 김선우 2016.11.16 11:42
  • 차이점은 없습니다. 제가 너무 답답해서 그냥 여러가지 시도해본거 뿐이에요 차이점이 있나해서;; 알 수 없는 사용자 2016.11.16 11:45
  • 지금 riding 안에는 double 형으로 lat,lon 이 있구요 알 수 없는 사용자 2016.11.16 11:47
  • ridinglist 안에 string 형인 time 과 list 형인 riding 이 있습니다. 알 수 없는 사용자 2016.11.16 11:48
  • 그렇다면 이상이 없을 것으로 보이는데요.. mDatabase 는 초기화 하셨나요? 김선우 2016.11.16 13:11
  • 네! 처음에 실행될때 초기화를 하고 시작하고있습니다. 알 수 없는 사용자 2016.11.16 13:13

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)