參考在std.algorithm中提供了大量操作range的函式。一共分為六大類。
一、searching 搜尋
1) all 判斷函式,是否集合中所有元素是否都符合條件
auto arr = [1, 3, 5, 7, 9];auto ret1 = arr.all!(f=> f != 2);
auto ret2 = arr.all!"a!=2"();
writeln(ret1);
writeln(ret2);
//輸出
//true
//true
2) any 判斷函式,是否存在任意乙個元素符合條件
auto arr = [1, 3, 5, 7, 9];auto ret1 = arr.any!(f=> f == 3);
auto ret2 = arr.any!"a==3"();
writeln(ret1);
writeln(ret2);
//輸出
//true
//true
3) balancedparens 檢測元素是否能完全配對
auto str1 = "1 + (2 * (3 + 1 / 2)";auto str2 = "1 + (2 * (3 + 1 / 2))";
auto ret1 = str1.balancedparens('(',')');
auto ret2 = str2.balancedparens('(',')');
writeln(ret1);
writeln(ret2);
//輸出
//false
//true
4) boyermoorefinder
5) canfind
6) count
7) countuntil
8) commonprefix
9) endswith
10) find
11) findadjacent
13) findamong
14) findskip
15) findsplit
16) findsplitafter
17) findsplitbefore
18) mincount
19) maxcount
20) minpos
21) maxpos
22) mismatch
23) skipover
24) startswith
25) until
二、comparison 比較
三、iteration 迭代
四、sorting 排序
五、set operations 集合運算
六、mutation 變換
D 語言中的模組(Module)
模組 模組宣告 多個宣告定義 多個宣告定義 多個宣告定義 宣告定義 宣告定義 多個宣告定義 宣告定義 特徵指示符 匯入宣告 列舉宣告 類宣告介面宣告 聚集宣告 宣告建構函式 析構函式 不變數單元測試 靜態建構函式 靜態析構函式 除錯規格 版本規格 module moduledeclaration d...
D語言中的列舉型別
列舉宣告 enum標誌符 列舉體enum列舉體enum標誌符 列舉基本型別 列舉體enum列舉基本型別 列舉體 列舉基本型別 型別 列舉體 多個列舉成員 列舉成員 列舉成員,列舉成員,多個列舉成員 列舉成員 標誌符 標誌符 表示式enumdeclaration enumidentifier enum...
D語言中的in inout out引數
private import std.stdio,std.process void test inta,inout intb,outint c void main 在上面的例子裡,程式在test函式中的輸出語句將輸出 0 1 0也就是說,out引數取值是無意義的,它只用於賦值。這裡有乙個很大的問題,...