同じコードを使用するインスタンス メソッドを持つ 2 つのクラスがあります。
このコードは NSString を受け取り、NSArray を返します。
現在、同じコードが 2 つのクラスで繰り返されています。
別々に書いて2つのクラスで呼び出す方法はありますか? NSArray のサブクラスにメソッドを作ろうとしたのですが、NSArray が抽象クラスであるため問題が多いです。助言がありますか?
ありがとうございました。
同じコードを使用するインスタンス メソッドを持つ 2 つのクラスがあります。
このコードは NSString を受け取り、NSArray を返します。
現在、同じコードが 2 つのクラスで繰り返されています。
別々に書いて2つのクラスで呼び出す方法はありますか? NSArray のサブクラスにメソッドを作ろうとしたのですが、NSArray が抽象クラスであるため問題が多いです。助言がありますか?
ありがとうございました。
NSString カテゴリを作成してみることができます。このカテゴリは配列を返します。例えば:
//
// NSString+MyCategory.h
#import
@interface NSString (MyCategory)
-(NSArray *)myMethod;
@end
//
// NSString+MyCategory.m
#import "NSString+MyCategory.h"
@implementation NSString (MyCategory)
-(NSArray *)myMethod {
NSArray *_arr = [self componentsSeparatedByString:@","];
return _arr;
}
@end
次に、クラス (またはコードで必要なもの) で、カテゴリをインポートできます。
#import "NSString+MyCategory.h"
そして、それを任意の文字列で使用します:
NSArray *myArray = [anyString myMethod];