API:Data.DB.TFieldDefList.Find
Delphi
function Find(const Name: string): TFieldDef; reintroduce;
C++
HIDESBASE TFieldDef* __fastcall Find(const System::UnicodeString Name);
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
function | public | Data.DB.pas Data.DB.hpp |
Data.DB | TFieldDefList |
説明
ソートされたリストにおける文字列のインデックスを見つけ、その値の文字列がリスト内に既に存在するかどうかを示します。
Data.DB.TFieldDefList.Find は System.Classes.TStringList.Find を継承しています。以下の内容はすべて System.Classes.TStringList.Find を参照しています。
ソートされたリストにおける文字列のインデックスを見つけ、その値の文字列がリスト内に既に存在するかどうかを示します。
Find を使用すると、ソートされたリストに文字列 S を追加する際の位置を示すインデックスが得られます。 文字列 S か、S と 大文字/小文字だけが異なる文字列(CaseSensitive が false の場合)がリスト内に既に存在する場合、Find は true を返します。 S に一致する文字列がリストに含まれていない場合、Find は false を返します。 S の追加位置を示すインデックスは Index パラメータで返されます。 Index の値はゼロを起点としており、先頭の文字列はインデックスが 0、2 番目の文字列はインデックスが 1 です。その他の場合も同様です。
メモ: Find は、ソートされたリストに対してのみ使用します。 ソートされていないリストの場合は、代わりに IndexOf メソッドを使用します。
ヒント: 文字列
S
が見つからなかった場合(そのために、Find の戻り値が False だった場合)、Index
はS
のすぐ前後で取り出したリストの最初の文字列のインデックスに設定されます
var
Index: Integer;
LStringList: TStringList;
begin
LStringList := TStringList.Create;
LStringList.Add('first string');
LStringList.Add('second string');
LStringList.Find('first string', Index); // Index = 0、'first string' がインデックス 0 のため
LStringList.Find('third string', Index); // Index = 2、'third string' が 'second string' のすぐ後から取り出されるため
LStringList.Find('great string', Index); // Index = 1 'great string' は 'first string' の後にソートされている(存在する場合)
LStringList.Free;
end;
関連項目