0

NSArrayのlastObjectをドット表記で指定するにはどうすればよいですか?

例えば:

@"myArray.lastObject"

間違っている。

ただし、コードでドット表記を使用してパスを表現する必要があります。ありがとう

4

1 に答える 1

1
NSArray* foo = [NSArray arrayWithObject: @"bar"];
id baz = foo.lastObject;

上記は私にとってはうまくいきます。

したがって、lastObjectを使用して並べ替えのキーを取得している場合は、次のようにします。コンパイラがオブジェクトのタイプを認識していない限り、ドット表記は機能せず、lastObjectはidを返すためOrder、通常の構文を取得または使用するには、型キャストを実行する必要があります。

NSSortDescriptor *rankSortDescriptor = [[NSSortDescriptor alloc] initWithKey: ((MyObject*)managedItems.lastObject).Order 
                                                                   ascending: YES];

または(私の意見ではより良い)

NSSortDescriptor *rankSortDescriptor = [[NSSortDescriptor alloc] initWithKey: [[managedItems lastObject] Order] 
                                                                   ascending: YES];
于 2012-06-11T14:04:00.227 に答える