Files
krkr2doc/docs/tjs2doc/contents/switch.html
2016-09-08 17:50:19 +09:00

100 lines
5.4 KiB
HTML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<!-- generated by to_html.pl from switch.xml -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>switch ステートメント</title>
<meta name="author" content="W.Dee" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<link href="browser.css" type="text/css" rel="stylesheet" title="吉里吉里関連リファレンス用標準スタイル" />
<link href="mailto:[email protected]" rev="Made" />
<link href="index.html" target="_top" rel="Start" title="トップページ" />
</head>
<body>
<h1><a id="id353" name="id353">switch ステートメント </a>
</h1><div class="para"><div>
 switch ステートメントを使うと、if ~ else if を簡潔に書くことができます。以下の構文をとります。<br />
<br />
<code class="bq">switch(base_expression)<br />
{<br />
<a id="id354" name="id354" class="targanchor"><dfn>case</dfn></a>&nbsp;condition_expression1&nbsp;:<br />
<br />
case&nbsp;condition_expression2&nbsp;:<br />
<br />
:<br />
:<br />
<br />
<a id="id355" name="id355" class="targanchor"><dfn>default</dfn></a>:<br />
<br />
:<br />
:<br />
}<br />
</code>
<br />
<br />
 base_expression には式を書き、最初にこの式が評価されます。switch の次のブロックの中の case の次の condition_expression? にも式を書きます。<br />
 condition_expression? はブロック内で次々に評価されます。評価された結果が base_expression と同じ場合、そこから実行が開始されます。condition_expression? に合致しない場合は、その間にかかれた文やステートメントは無視されます。また、合致した場合、それ以降、case や default は無視されます。<br />
 default: は省略できますが、default がかかれた場合は強制的に default 以降の文やステートメントが実行されます。<br />
 ブロックを抜けるには <a id="id356" name="id356" class="targanchor"><dfn>break</dfn></a>; を書きます。break を書き忘れて、次の case の内容まで実行してしまうのはよくあることなので注意してください。<br />
<br />
<br />
<code class="bq"><span class="weak">例:</span><br />&nbsp;&nbsp;&nbsp;&nbsp;switch(a)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;0:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inform(&quot;a&nbsp;&nbsp;0&nbsp;です&quot;);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;1:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inform(&quot;b&nbsp;&nbsp;1&nbsp;です&quot;);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;2:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inform(&quot;b&nbsp;&nbsp;2&nbsp;です&quot;);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;&nbsp;&nbsp;default:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inform(&quot;b&nbsp;&nbsp;0&nbsp;でも&nbsp;1&nbsp;でも&nbsp;2&nbsp;でもありません&quot;);<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;switch(a)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;0:<br />
&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;1:&nbsp;<span class="comment">//&nbsp;break&nbsp;がないので&nbsp;case&nbsp;0&nbsp;の場合はここを通過する</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inform(&quot;a&nbsp;&nbsp;0&nbsp;&nbsp;1&nbsp;です&quot;);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;2:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inform(&quot;a&nbsp;&nbsp;2&nbsp;です&quot;);<br />
&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<span class="comment">//&nbsp;default&nbsp;がないので&nbsp;0&nbsp;1&nbsp;2&nbsp;以外の場合はなにも実行されない</span><br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;switch(a)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;b+1:&nbsp;<span class="comment">//&nbsp;case&nbsp;の後には式も指定できる</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inform(&quot;a==b+1&quot;);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;c+b:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;inform(&quot;a==c+b&quot;);<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;switch(str)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;&quot;あいうえお&quot;:&nbsp;<span class="comment">//&nbsp;文字列も指定できる</span><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type=1;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;&nbsp;&nbsp;case&nbsp;&quot;かきくけこ&quot;:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type=2;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</code>
<br />
</div></div>
<script type="text/javascript" charset="UTF-8" src="documentid.js" ></script>
<script type="text/javascript" charset="UTF-8" src="postcontent.js" ></script>
</body>
</html>