隨著 Delphi 引入大量 Helper (記錄/類別/介面輔助方法),鏈式呼叫 (Method Chaining) 成為可能,大幅提升程式碼可讀性與撰寫效率。
var num: Integer;
begin
{ 3.1415926 → 取小數點後 141 → 轉整數 }
num := Pi.ToString().Split(['.'])[1].Substring(0,3).ToInteger();
{ 輸入 . 後按 Ctrl+Space 即可獲得智慧提示 }
ShowMessage(num.ToString()); { 141 }
end;
uses System.Character; { for TCharHelper.IsInArray }
const
FText = 'A: qwertyuiop'#13#10 +
'B: wertyuiopa'#13#10 +
'C: ertyuiopas'#13#10 +
'qwertyuiopasd'#13#10 +
'D: rtyuiopasd'#13#10;
procedure TForm1.Button1Click(Sender: TObject);
var
List: TStringList;
A, B, C, D: string;
str: string;
begin
List := TStringList.Create;
List.Text := FText;
for str in List do
begin
{ 長度>2 且第 3 字元為冒號 (索引 2) }
if (str.Length > 2) and str[2].IsInArray([':']) then
begin
case str[1] of
'A': A := str.Substring(2).Trim; { 鏈式:Substring → Trim }
'B': B := str.Substring(2).Trim;
'C': C := str.Substring(2).Trim;
'D': D := str.Substring(2).Trim;
end;
end;
end;
List.Free;
ShowMessageFmt('%s; %s; %s; %s', [A, B, C, D]);
end;
| 型別 | Helper 單元 | 常用鏈式方法 |
|---|---|---|
| string | System.SysUtils (TStringHelper) | Trim, Substring, Split, ToLower/Upper, Replace, Contains, StartsWith, EndsWith, ToInteger/Double |
| Integer/Int64 | System.SysUtils | ToString, ToHexString |
| TArray<T> | System.Generics.Collections | Length, Sort, BinarySearch |
| TStringList | System.Classes | Add, AddStrings, IndexOf, Sort, SaveToFile/LoadFromFile |
. 後自動列出可用方法Trim 回傳新字串) 更安全善用 Helper 與鏈式呼叫,能讓 Delphi 程式碼達到動態語言般的簡潔表達力,同時保持強型別與編譯期檢查優勢。