2012-08-06 2 views
6

저는 Android가 처음이에요. 나는 주변을 검색했지만 안드로이드에서 iOS의 NSdictionary와 같은 작업을 찾지 못했습니다. 아이폰 OS에서 예를 들어 나는안드로이드에 NSDictionary 같은 것이 있습니까?

Array 
    idx1: [objA1 for keyA],[objB1 for keyB],[objB1 for keyC] 
    idx2: [objA2 for keyA],[objB2 for keyB],[objB2 for keyC] 
    idx3: [objA3 for keyA],[objB3 for keyB],[objB3 for keyC] 

가 나는 안드로이드

<string-array name="list_obj1"> 
    <item>ObjA1</item> 
    <item>ObjB2</item> 
    <item>ObjC3</item> 
</string-array> 
<string-array name="list_obj2"> 
    <item>ObjB1</item> 
    <item>ObjB2</item> 
    <item>ObjB3</item> 
</string-array> 
<string-array name="list_obj3"> 
    <item>ObjC1</item> 
    <item>ObjC2</item> 
    <item>ObjC3</item> 
</string-array> 

내 질문에 그런 비슷한 일을 문자열 배열을 만들 수 있습니다 알고이 형식과 같은 사전의 SIMPLE 배열을 만들 수있는 경우가있다 AN iOS와 같은 Android에서 사전 배열을 만드는 데 사용되는 항목입니다.

도움 주셔서 감사합니다.

답변

14

먼저이 자료에 대한 자습서가 많아서 더 많은 정보를 검색 할 수 있다고 생각합니다. 새로운 Android 사용자이므로 검색 할 "이름"을 모를 수도 있습니다. 이 경우, "HashMap"이 당신이 원하는 것입니다. 그것은 NSdictionary와 같이 작동합니다.

//Create a HashMap 
Map <String,String> map = new HashMap<String,String>(); 
//Put data into the HashMap 
map.put("key1","Obj1"); 
map.put("key2","Obj2"); 
map.put("key3","Obj3"); 

// Now create an ArrayList of HashMaps 
ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>(); 

//Add the HashMap to the ArrayList 
mylist.add(map); 

이제 사전에 배열이 있습니다.

희망 도움말.

+0

빠른 답을 보내 주셔서 감사합니다. 그러나 답변은 사전을 하나만 만들면됩니다. 나는 사전 배열을 찾고 있어요. 도와주세요! – JHHoang

+0

감사합니다. 이게 내가 찾는거야. 고맙습니다. – JHHoang

+0

끝내 대답, 감사합니다 –

2

@ user1139699가 말한 것을 ArrayList에 넣을 수 있습니다. 또한이 같은 파일을로드 할 경우

ArrayList<HashMap> list = new ArrayList(); 

Map <String, String> map = new HashMap<String,String>(); 
map.put("key","Obj"); 

list.add(map); 
+0

답해 주셔서 감사합니다. @ user1139699의 대답은이 경우 내가 원하는 것입니다. – JHHoang

0

:

property.key.1=value of 1st key 
property.key.2=value of 2nd key 
prompt.alert = alert 

당신이) (자바 속성을 사용할 수있다 등; 그러면 각 키의 값을 즉시 얻을 수 있습니다.



설명 : 예를 들어, 당신은이

파일 myTranslations.txt. 이 파일에서 당신은 형식에 키/값 쌍을 쓰기 :

property.key.1=value of 1st key 
property.key.2=value of 2nd key 
prompt.alert = alert 

곳 "="인 키 전에 부분 및 일부 후에는 값입니다.

그런 다음 코드에서 당신이 할 : 참고 FilePath 경로가 위의 파일입니다

Properties properties = new Properties(); 

    File propertiesFile = new File (filePath); 
    FileInputStream inputStream = null; 
    try { 
     inputStream = new FileInputStream(propertiesFile); 
     properties.load(inputStream); 
    } catch (IOException ioe) { 
     ioe.printStackTrace(); 
    } 

. 는 txt 파일에서와 같이

alert 

: 문자열을 반환합니다

properties.get("prompt.alert") 

:

그런 다음 각 키의 값을 얻을 수 있습니다.

만약 도움이된다면 upvote하십시오.

+0

이것에 대해 더 자세히 설명해 주시겠습니까? – JHHoang

관련 문제