6

<Id, String>Id が連絡先 ID であり、文字列が生成された電子メール メッセージである場所を格納するマップ オブジェクトがあります。

マップを正常にループし、マップを反復処理するときに値 (文字列部分) を引き出すことができました。

私ができるようにしたいのは、値を取得するときにキーも取得することです。これはほとんどの言語で非常に簡単に実行できますが、apex で実行する方法を見つけることができないようです。

これは私が今持っているものです:

Map<Id,String> mailContainer = new Map<Id,String>{};

for(String message : mailContainer.values())
{

    // This will return my message as desired
    System.debug(message);

}

私が欲しいのは次のようなものです:

for(String key=>message : mailContainer.values())
{

    // This will return the contact Id
    System.debug(key);

    // This will return the message
    System.debug(message);

}

前もって感謝します!

4

3 に答える 3

13

値の代わりにキーを反復処理します。

for (Id id : mailContainer.keySet())
{
    System.debug(id);
    System.debug(mailContainer.get(id));
}
于 2012-10-01T23:13:48.887 に答える
0

存在しないので見つかりません。Apexでは、キーまたは値のいずれかを反復処理できますが、関連付け(キー、値)は反復処理できません。

于 2012-10-02T01:12:07.597 に答える