Web呼び出しを行うために使用される辞書を含むクラスがあります。基本的に、キーと値のペアは、Web呼び出しで値が必要な場合にURLに送信されるデータを作成するために使用されます。このオブジェクトクラスは、JSONを使用して設定されます。
このクラスオブジェクトを取得し、それを使用してWeb呼び出しを設定するメソッドがあります。私の問題は、パラメータが必要ない場合、辞書がnullに設定されていることです。これは問題ありませんが、何らかの理由でifステートメントを実行して辞書がnullかどうかを確認すると、elseにヒットします。 nullではないことを示すステートメント。メソッドは次のようになります
-(void)webCall :(WebServiceCall *)webCall_p
{
//Creates a dictionary from the one stored in the WebResponse Class
NSMutableDictionary *dict = [[webCall_p getWebServiceResponse] getVariablesByRegexMap];
NSLog(@"%@", dict);
}
私がそれを印刷するとき、私はこれを手に入れます
<null>
それでも、ifステートメントを入力して、そのようにnullかどうかを確認すると
if(dict == NULL)
{
NSLog(@"NULL");
}
else
{
NSLog(@"Not NULL");
}
nullではないと言っています。dict countコマンドを使おうとすると、
NSLog(@"%i", [dict count]);
アプリケーションがクラッシュし、このエラーが発生します
-[NSNullカウント]:認識されないセレクターがインスタンス0xaf8678に送信されました2012-11-23 11:48:44.005テスト[3403:14003] * キャッチされない例外'NSInvalidArgumentException'、理由:'のためにアプリを終了します-[NSNullカウント]:認識されないセレクターインスタンス0xaf8678に送信されました '
私の人生のためにこれを理解することはできません。どんな助けでも大歓迎です