ソースコード
/// <summary> /// int 型の拡張メソッドを管理するクラス /// </summary> public static class IntExtensions { /// <summary> /// 数値を加算して、範囲を超えた分は 0 からの値として処理して返します /// </summary> public static int Repeat(this int self, int value, int max) { return (self + value + max) % max; } }
使い方
int index = 0; int max = 3; index = index.Repeat( 1, max); // 1 index = index.Repeat( 1, max); // 2 index = index.Repeat( 1, max); // 0 index = index.Repeat( 1, max); // 1 index = index.Repeat(-1, max); // 0 index = index.Repeat(-1, max); // 2