Flash / Flex / ActionScript/Language/Arithmetic Operators
Содержание
- 1 Arithmetic Operators in Actionscript
- 2 Assignment Operators
- 3 Compound Assignment Operators (+=, -=, *=, /=, and %=): x += 1; is the same as writing x =
- 4 Increment (++) and Decrement ( -- )
- 5 Modulo (%)
- 6 myVariable *= 6; is the same as: myVariable = myVariable * 6;
- 7 myVariable += 6; is the shorthand version of the following: myVariable = myVariable + 6;
- 8 Using Mathematical Operators: prefix and postfix
Arithmetic Operators in Actionscript
<source lang="java">
Operator Name Example + Plus x + y - Minus/Negation x - y
- Multiply x*y
/ Divide x/y % Modulo x%y package{
import flash.display.Sprite; public class Main extends Sprite{ public function Main(){ var nYear:Number = 2004; trace(nYear % 4); // Displays: 0 } }
}
</source>
Assignment Operators
<source lang="java">
Operator Name Example What It Means = Equals (assignment) x = y x = y += Add by value x += y x = x + y -= Subtract by value x -= y x = x - y
- = Multiply by value x *= y x = x * y
/= Divide by value x /= y x = x / y %= Modulo by value x %= y x = x % y <<= Left shift by value x <<= y x = x << y >>= Right shift by value x >>= y x = x >> y >>>= Right shift zero fill by value x >>>= y x = x >>> y &= Bitwise AND by value x &= y x = x & y |= Bitwise OR by value x |= y x = x | y ^= Bitwise XOR by value x ^= y x = x ^ y
</source>
Compound Assignment Operators (+=, -=, *=, /=, and %=): x += 1; is the same as writing x =
<source lang="java">
package{
import flash.display.Sprite; public class Main extends Sprite{ public function Main(){ var x:Number = 0; x += 5; // x = 5 trace(x); x -= 3; // x = 2 trace(x); x *= 3; // x = 6 trace(x); x /= 2; // x = 3 trace(x); x %= 3; // x = 0 trace(x); } }
}
</source>
Increment (++) and Decrement ( -- )
<source lang="java">
package{
import flash.display.Sprite; public class Main extends Sprite{ public function Main(){ var x:Number = 5; x++; // 6 trace(x); x--; // 5 trace(x); } }
}
</source>
Modulo (%)
<source lang="java">
package{
import flash.display.Sprite; public class Main extends Sprite{ public function Main(){ var a:int = 9; var b:int = 3; trace(a%b); } }
}
</source>
myVariable *= 6; is the same as: myVariable = myVariable * 6;
<source lang="java">
package{
import flash.display.Sprite; public class Main extends Sprite{ public function Main(){ var myVariable:Number = 6; myVariable *= 6; trace(myVariable); myVariable = myVariable * 6; trace(myVariable); } }
}
</source>
myVariable += 6; is the shorthand version of the following: myVariable = myVariable + 6;
<source lang="java">
package{
import flash.display.Sprite; public class Main extends Sprite{ public function Main(){ var myVariable:Number = 6; myVariable = myVariable + 6; trace(myVariable); //12 myVariable += 6; trace(myVariable); //18 } }
}
</source>
Using Mathematical Operators: prefix and postfix
<source lang="java">
package{
import flash.display.Sprite; public class Main extends Sprite{ public function Main(){ var quantity:Number = 5; trace(quantity++); // Displays: 5 trace(quantity); // Displays: 6 var quantity:Number = 5; trace(++quantity); // Displays: 6 trace(quantity); // Displays: 6 } }
}
</source>