고수님들.
 아래 소스와 같이 sharedpreference 관련 데이타 저장하고 읽어오는 작업중입니다.
 그런데 이상하게 저장한 데이타값이 읽을때 그대로 나오지 않습니다.
 
 -- 소스부분 ----

 boolean a[] = new boolean[20];

 a[i] =  임의의 boolean값;

 //저장시
 Sharedpreference pref = List.edit();

 for(int i = 0; i  < 20; i++)
{
 editor.putBoolean("key",a[i]);
 editor.commit();
}


 boolean b[] = new boolean[20];
 //읽을시
 for(int i = 0 ; i <20;  i++)
{
     b[i] = pref.getBoolean("key",false);
}

이렇게 쓸때 원하는 데이타가 나오지 않습니다. sharedpreference 위와같이 배열로 쓰면 데이타가 이상해지나요?
안되는 건가요? 

조언 부탁드립니다.