C#の拡張メソッド(extension method)
このレッスンでは、既存のstring型を変更せずに、新しいメソッドを追加します。
はじめに
拡張メソッド(extension method)を使うと、stringのような.NETの型も含めて、既存の型にメソッドを「追加」できます。実際にはstaticメソッドですが、オブジェクトのメソッドと同じ書き方で呼べるので、コードが読みやすく、見つけやすくなります。
Truncateの最初の引数に付いたキーワードthisは、これがstring型の拡張メソッドであることを示します。そのため、Truncateが文字列にもともとあるメソッドであるかのように、"CodeUtility".Truncate(4)と呼べます。このメソッドは文字列を4文字に切って三点リーダーを付けるので、結果はCode…になります。元のstring型はまったく変わりません。
実行できる C# の例
C#
Program.cs
using System;
static class StringExtensions
{
public static string Truncate(this string value, int length)
=> value.Length <= length ? value : value[..length] + "…";
}
class Program
{
static void Main() => Console.WriteLine("CodeUtility".Truncate(4));
}
Code…デバッガーで練習する
大事な代入や条件にブレークポイントを置いて Debug を押し、次の行に進む前にローカル変数の値を確かめましょう。
チャレンジで練習する
このレッスンの内容を使って実際の問題を解きましょう。各チャレンジはブラウザで動き、すぐにテストされ、AI のレビューも受けられます。
- タイトルケース すべての単語の先頭文字を大文字にします。 簡単
- Acronym Generator Create an acronym from the first letter of every word, in uppercase. 簡単