DRILL 08 / 再利用とデータ構造
ジェネリクス
入力の要素型を保ったまま、複数の型で使える関数を定義します。
YOUR TASK
lastOrNull() を完成させる
読み取り専用配列の末尾要素を返してください。空配列の場合は null を返します。要素型を失わないジェネリック関数にします。
- 入力
- values は任意の要素型を持つ読み取り専用配列です。
- 出力
- 末尾要素を元の型のまま返し、空配列なら null を返します。
SYNTAX RECALL
確認する構文
function first<T>(values: readonly T[]): T | null {
return values[0] ?? null;
} - <T> で呼び出しごとの要素型を受け取る
- readonly T[] で入力配列を変更しない
- 戻り値へ null の可能性を含める
STEPWISE HINTS
ヒント
01考え方の方向
関数名の後ではなく、関数名の前に `<T>` を置きます。
02使うデータ構造
末尾の添字は `values.length - 1` です。
03擬似コード
空配列を先に判定して null を返すと、残りの処理が明確になります。
AFTER ACCEPTED
解説
AC 後に解説が開きます
まずは自分の言葉で方針を説明し、コードに落としてみましょう。