在MATLAB中,匿名函數(也稱為lambda函數)是一種簡潔的表示簡單函數的方法
myFunction = @(input1, input2, ...) expression;
其中input1
, input2
, … 是輸入參數,expression
是一個返回函數結果的表達式。
例如,創建一個匿名函數來計算兩個數的和:
add = @(a, b) a + b;
add
函數計算3和5的和:result = add(3, 5);
disp(result); % 輸出 8
arrayfun
函數將匿名函數應用于數組的每個元素:x = [1, 2, 3, 4];
square = @(x) x.^2;
squaredX = arrayfun(square, x);
disp(squaredX); % 輸出 [1, 4, 9, 16]
x = [1, 2, 3, 4];
squaredX = x.^2;
disp(squaredX); % 輸出 [1, 4, 9, 16]
這里我們沒有顯式地定義匿名函數,而是直接在向量x
上使用.^
操作符。這是因為.^
操作符實際上是一個匿名函數的簡寫形式,等同于@(x) x.^2
。
這些示例展示了如何在MATLAB中創建、調用和使用匿名函數。匿名函數是一種非常方便的編程工具,可以讓你更簡潔地表示簡單的函數操作。