List안의 특정 값을 받아오는 방법

조회수 593회

안녕하세요 안드로이드 개발 도중 막히는 부분이 있어서 질문 남깁니다 firebase와 안드로이드를 연동하여 실시간데이터베이스에서 값을 받아와서 화면에 띄워주는 페이지를 작성중인데, 그 과정에서 ArrayList안에 특정 key의 value 값을 받아오는 방법이 있을까요..?

 Map<String,Object> gameValue = new HashMap<>();
...        

public void onDataChange(@NonNull DataSnapshot datasnapshot) {

                        for(DataSnapshot postSnapshot : datasnapshot.getChildren()){
                           String key = postSnapshot.getKey();
                            gameValue.put(postSnapshot.getKey(),postSnapshot.getValue());
                            //DB에서 저장한 키값 가져옴

                        for(int j=0; j<8; j++){
                            String index = Integer.toString(j+1);

                            if(!gameValue.containsKey(index)) break;
                            indexData.add(j,gameValue.get(index));

                            //ArrayList 의 0번 인덱스부터 값 저장 DB상 1번째 경기 = 0번 인덱스
                            if(indexData.size()!=0)
                            {

                                Log.d("ArrayList","index:"+j+"| Data : "+indexData.get(j));

                            }else{
                                Log.d("Empty_List","ArrayList is empty");

                            }

                        }

현재 ArrayList gameValue에는 [{awayteam=Non, hometeam=FCsoccer}, {awayteam=Non, hometeam=FCfootball}] 이런식으로 데이터가 담겨있고

각각

0번 인덱스에는 {awayteam=Non, hometeam=FCsoccer}

1번 인덱스에는{awayteam=Non, hometeam=FCfootball} 이런식으로 데이터가 담아져 있습니다

(인덱스의 최대 개수 = 8 )

String 배열을 두개 만들어 인덱스 순서대로 hometeam 값과 awayteam 값을 따로 저장하고 싶은데 어떻게 해야 좋을까요.... 문제 설명이 더 필요하시면 좀 더 상세히 설명하겠습니다

(각 인덱스별 키 값은 hometeam, awayteam 두가지 로만 구성 되어있음) 도움 부탁드려요 ㅠㅠ

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

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

(ಠ_ಠ)
(ಠ‿ಠ)