if文と同じく条件分岐
同じ値に対して処理を分岐したい場合はif文よりも見た目がすっきりします。
switch ([比較される値])
{
case [条件1]:
break;
case [条件2]:
break;
default: // 条件1も条件2も満たさない場合
break;
}
例①
int value = 0;
switch (value)
{
case 0:
MessageBox.Show("valueの値は0です。");
break;
case 1:
case 2:
MessageBox.Show("valueの値は1か2です。");
break;
default:
MessageBox.Show("valueの値は0,1,2以外です。");
break;
}
例②
private enum ValuesEnum
{
Val1 = 0,
Val2 = 1,
Val3 = 2,
}
private void ShowMessage()
{
ValuesEnum value = ValuesEnum.Val2;
switch (value)
{
case ValuesEnum.Val1:
MessageBox.Show("valueの値はVal1です。");
break;
case ValuesEnum.Val2:
case ValuesEnum.Val3:
MessageBox.Show("valueの値はVal2かVal3です。");
break;
default:
MessageBox.Show("valueの値はValuesEnumに未定義の値です。");
break;
}
}
最終更新:2014年01月25日 11:08