마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

ArrayList 안에 ArrayList 여러번 사용시 성능에 대한 질문

0 추천

안녕하세요

이번에 ArrayList를 여러번 중복시켜서 써볼까 하는데 성능이 어떨지 몰라서 이렇게 질문드립니다.

ArrayList< ArrayList<> >  이런식으로 쓰는 코드는 많이 봤었는데

 

저는 ArrayList< ArrayList<ArrayList<ArrayList<>>> > 이렇게 4번 중복해서 쓰려고 합니다.

근데 이게 성능이 어떨지 아에 감이 안와서.. 이렇게 질문을 드립니다.

배열도 다중배열을 쓰면 성능이 안좋다 이런것처럼 Array도 이렇게 4번중복으로 쓰면 성능이 최악으로될지

어떨지 몰라서요..

 

이렇게 쓸려고 하는 이유는.. 서버에서 JSON 데이터를 받아오는데, 좀 복잡한 편입니다.

어레이 안에 오브젝트 안에 어레이 안에 오브젝트안에,, 이런식이라서.. 각 갯수도 일정하지 않아서

처리하기가 힘들어서 위에 처럼 써볼까 합니다.

 


(1)  (2)   (3)    (4)

 a  a-1  a-1-1, a-1-1-1   ...
          a-1-2
          a-1-3

    a-2  a-2-1, a-2-1-1   ...

    a-3
    ...


 b  b-1   b-1-1, b-1-2   ...

 c  

...
 

이런식으로 4겹으로 되어있고

하나를 벗겨내면 a-1, a-2 처럼 몇개인지는 항상 다르고 a-!, a-@가 될수도 있고 완전히 랜덤입니다..

 

처음에 파싱할때는

(1) 리스트
(2) 리스트
(3) 리스트
(4) 리스트

각 (2)번의 갯수 리스트

..

이런식으로 값을 저장해서 썼었는데 데이터가 늘어날수록 관리하기가 너무 힘들어서 

새로 바꿔보려고 합니다.

 

Array로 바꾸면 이렇게 될거 같은데

전체리스트< a에 대한 리스트<a-1에대한 리스트<a-1-1에대한 리스트>,

                 b에 대한 리스트,

                 c에 대한 리스트,

                 d에 대한 리스트>

 

이렇게 값을 저장해서 사용해도 성능에 지장이 없을지 질문드립니다..

 

* 이렇게 저장한 값은 RecyclerView에 뿌려줍니다..

  RecyclerView의 뷰 재사용때문에, 값을 깔끔하게 파싱해서 저장해두고 싶습니다 ㅠㅠ.

익명사용자 님이 2017년 6월 30일 질문

1개의 답변

0 추천
 
채택된 답변

데이터가 얼마나 많은지 모르겠지만, 개인생각으로는 쓰셔도 된다고 생각합니다. 

데이터가 정말 많지 않고서야 큰 성능저하는 없습니다. 

SparseIntArray와 같은 넘을 사용하는 것이 성능에 도움이 될 수도 있습니다. 

 

 

mcsong (44,040 포인트) 님이 2017년 7월 1일 답변
정말 감사드립니다

시도해보겠습니다!!
...