318 lines
8.2 KiB
Groff
318 lines
8.2 KiB
Groff
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
|
<title>switch() | reference | Processing.js</title>
|
|
<link rel="stylesheet" href="../css/bootstrap.css" type="text/css" />
|
|
<link rel="stylesheet" href="../css/syntax.css" type="text/css" />
|
|
<link rel="stylesheet" href="../css/processing-js.css" type="text/css" />
|
|
<script src="../js/processing.min.js" type="text/javascript"></script>
|
|
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script>
|
|
<script src="../js/jquery.tweet.min.js" type="text/javascript"></script>
|
|
<script src="../js/tabselector.js" type="text/javascript"></script>
|
|
<script src="http://cdn.webglstats.com/stat.js" defer="defer" async="async"></script>
|
|
<script type="text/javascript">
|
|
// Only do tracking on the actual site
|
|
if (document.location.host === "processingjs.org") {
|
|
var _gaq = _gaq || [];
|
|
_gaq.push(['_setAccount', 'UA-8565070-1']);
|
|
_gaq.push(['_trackPageview']);
|
|
(function() {
|
|
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
|
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
|
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
|
}());
|
|
}
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<div class="container">
|
|
<div class="header">
|
|
<a href="http://processingjs.org/"><img src="../images/header.png" width="177" height="42"></a>
|
|
</div>
|
|
<span class="tagline">a port of the Processing Visualization Language</span>
|
|
|
|
<div class="navbar">
|
|
<canvas width="940px" height="78px" data-processing-sources="/sketches/bannerSketch.pde"></canvas>
|
|
<ul>
|
|
<li><a href="http://processingjs.org/"><span>home</span></a></li>
|
|
<li><a href="http://processingjs.org/download/"><span>download</span></a></li>
|
|
<li><a href="index.html"><span>reference</span></a></li>
|
|
<li><a href="http://processingjs.org/exhibition/"><span>exhibition</span></a></li>
|
|
<li><a href="http://processingjs.org/learning/"><span>learning</span></a></li>
|
|
<li><a href="http://processingjs.org/articles/"><span>articles</span></a></li>
|
|
<li><a href="http://processingjs.org/community/"><span>community</span></a></li>
|
|
<li><a href="http://processingjs.org/blog/"><span>blog</span></a></li>
|
|
</ul>
|
|
<a class="viewsource" href="http://processingjs.org/sketches/bannerSketch.pde">view source</a>
|
|
</div>
|
|
|
|
<div class="page row">
|
|
<div class="span11">
|
|
<table cellpadding="0" cellspacing="0" border="0" class="ref-item">
|
|
|
|
<tr class="name-row">
|
|
|
|
<th scope="row">Name</th>
|
|
|
|
<td><h3>switch()</h3></td>
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Examples</th>
|
|
|
|
|
|
|
|
<td><div class="example"><pre>int num = 1;
|
|
|
|
|
|
|
|
switch(num) {
|
|
|
|
case 0:
|
|
|
|
println("Zero"); // Does not execute
|
|
|
|
break;
|
|
|
|
case 1:
|
|
|
|
println("One"); // Prints "One"
|
|
|
|
break;
|
|
|
|
}</pre></div><hr class="noShade" noshade="noshade" size="1" /><div class="example"><pre>char letter = 'N';
|
|
|
|
|
|
|
|
switch(letter) {
|
|
|
|
case 'A':
|
|
|
|
println("Alpha"); // Does not execute
|
|
|
|
break;
|
|
|
|
case 'B':
|
|
|
|
println("Bravo"); // Does not execute
|
|
|
|
break;
|
|
|
|
default: // Default executes if the case labels
|
|
|
|
println("None"); // don't match the switch parameter
|
|
|
|
break;
|
|
|
|
}</pre></div><hr class="noShade" noshade="noshade" size="1" /><div class="example"><pre>// Removing a "break" enables testing
|
|
|
|
// for more than one value at once
|
|
|
|
|
|
|
|
char letter = 'b';
|
|
|
|
|
|
|
|
switch(letter) {
|
|
|
|
case 'a':
|
|
|
|
case 'A':
|
|
|
|
println("Alpha"); // Does not execute
|
|
|
|
break;
|
|
|
|
case 'b':
|
|
|
|
case 'B':
|
|
|
|
println("Bravo"); // Prints "Bravo"
|
|
|
|
break;
|
|
|
|
}</pre></div></td>
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Description</th>
|
|
|
|
<td>Works like an <b>if else</b> structure, but <b>switch()</b> is more convenient when you need to select between three or more alternatives. Program controls jumps to the case with the same value as the expression. All remaining statements in the switch are executed unless redirected by a <b>break</b>. Only primitive datatypes which can convert to an integer (byte, char, and int) may be used as the <b>expression</b> parameter. The default is optional.</td>
|
|
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Syntax</th>
|
|
|
|
<td><pre>switch(<kbd>expression</kbd>)
|
|
|
|
{
|
|
|
|
case <kbd>label</kbd>:
|
|
|
|
<kbd>statements</kbd>
|
|
|
|
case <kbd>label</kbd>: // Optional
|
|
|
|
<kbd>statements</kbd> // "
|
|
|
|
default: // "
|
|
|
|
<kbd>statements</kbd> // "
|
|
|
|
}</pre></td>
|
|
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Parameters</th>
|
|
|
|
<td><table cellpadding="0" cellspacing="0" border="0">
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">expression</th>
|
|
|
|
<td>byte, char, or int</td>
|
|
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">label</th>
|
|
|
|
<td>byte, char, or int</td>
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">statements</th>
|
|
|
|
|
|
|
|
<td>one or more statements to be executed</td>
|
|
|
|
</tr>
|
|
|
|
</table></td>
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Usage</th>
|
|
|
|
<td>Web & Application</td>
|
|
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Related</th>
|
|
|
|
<td><a href="case.1">case</a><br />
|
|
|
|
<a href="default.1">default</a><br />
|
|
|
|
<a href="break.1">break</a><br />
|
|
|
|
<a href="if_.1">if()</a><br />
|
|
|
|
<a href="else_.1">else()</a><br /></td>
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
</table>
|
|
|
|
|
|
<div class="cclicense">
|
|
<p>This reference is licensed under the CC BY-NC-SA 2.0 license:</p>
|
|
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.0/">
|
|
<img alt="Creative Commons License" border="0" src="../images/somerights20.gif" />
|
|
</a>
|
|
</div>
|
|
</div>
|
|
<div class="sidebar span4">
|
|
<h3><a href="http://processingjs.org/download/">Downloads</a></h3>
|
|
<ul>
|
|
<li><a href="http://processingjs.org/download/">Download the latest version of Processing.js!</a></li>
|
|
</ul>
|
|
|
|
<h3><a href="http://processingjs.org/articles/">Articles</a></h3>
|
|
<ul>
|
|
<li><a href="http://processingjs.org/articles/jsQuickStart.html">Quick Start - JavaScript Developer</a></li>
|
|
<li><a href="http://processingjs.org/articles/p5QuickStart.html">Quick Start - Processing Developer</a></li>
|
|
<li><a href="http://processingjs.org/articles/RenderingModes.html">Rendering Modes</a></li>
|
|
<li><a href="http://processingjs.org/articles/PomaxGuide.html">Pomax's Guide to processing-js</a></li>
|
|
</ul>
|
|
|
|
<h3><a>Web IDEs</a></h3>
|
|
<ul>
|
|
<li><a href="http://sketchpad.cc">Sketchpad.cc</a></li>
|
|
<li><a href="http://processingjs.org/tools/processing-helper.html">Processing.js Helper</a></li>
|
|
<li><a href="http://www.openprocessing.org">OpenProcessing.org</a></li>
|
|
</ul>
|
|
|
|
<h3><a href="http://processingjs.org/community/">Community</a></h3>
|
|
<ul>
|
|
<li><a href="irc://irc.mozilla.org/processing.js">IRC Channel</a></li>
|
|
<li><a href="http://processing-js.lighthouseapp.com/">Bug Tracker</a></li>
|
|
<li><a href="http://github.com/processing-js/processing-js/">Github Repository</a></li>
|
|
<li><a href="http://groups.google.com/group/processingjs">Google Group</a></li>
|
|
<li><a href="http://zenit.senecac.on.ca/wiki/index.php/">Open Source @ Seneca</a></li>
|
|
</ul>
|
|
|
|
<h3><a href="http://twitter.com/processingjs">Twitter Feed</a></h3>
|
|
<div class="twitter"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="footer">
|
|
Processing is an open visualization language developed by
|
|
<a href="http://benfry.com/">Ben Fry</a> & <a href="http://reas.com/">Casey Reas</a>,
|
|
and originally ported to Javascript by
|
|
<a href="http://ejohn.org/blog/processingjs/">John Resig</a>.
|
|
Processing.js is maintained by the Processing.js team.
|
|
</div>
|
|
</div>
|
|
<a href="http://github.com/processing-js/processing-js/">
|
|
<img style="position: absolute; top: 0; right: 0; border: 0;" src="../images/forkme-right-orange.png" alt="Fork me on GitHub">
|
|
</a>
|
|
</body>
|
|
</html>
|