您的位置:首页 > 编程语言 > Java开发

JAVA FX语法学习----运算符

2010-02-22 18:58 225 查看
 

赋值运算符


赋值运算符 "=" 是您将遇到的最常用的运算符。使用该运算符可以将其右侧的值赋给其左侧的操作数:


result = num1 + num2;

days = ["Mon","Tue","Wed","Thu","Fri"];

 

算术运算符


使用算术运算符可以执行加、减、乘和除运算。
mod

运算符用一个操作数除以另一个操作数并将余数作为结果返回。


+ (加运算符)

- (减运算符)

* (乘运算符)

/ (除运算符)

mod (求余运算符)

 

以下脚本提供了一些示例:


var result = 1 + 2; // result is now 3

println(result);

result = result - 1; // result is now 2

println(result);

result = result * 2; // result is now 4

println(result);

result = result / 2; // result is now 2

println(result);

result = result + 8; // result is now 10

println(result);

result = result mod 7; // result is now 3

println(result);

 

您还可以结合使用算术运算符与赋值运算符来创建复合赋值。例如,
result += 1;

result  = result+1;
都会将
result
的值加 1。


var result = 0;

result += 1;

println(result); // result is now 1

result -= 1;

println(result); // result is now 0

result = 2;

result *= 5; // result is now 10

println(result);

result /= 2; // result is now 5

println(result);

 

唯一不能按照此方式使用的算术运算符是
mod
。例如,如果您希望将
result

除以 2,然后将余数重新赋给其自身,则需要编写:
result = result mod 2;


一元运算符


大多数运算符都需要两个操作数,而一元运算符仅使用一个操作数来执行诸如按一递增/递减某个值、对某个
数字求反或对布尔值求反之类的操作。


-  一元减运算符;对某个数字求反

++   递增运算符;按 1 递增某个值

--     递减运算符;按 1 递减某个值

not    逻辑求补运算符;对布尔值求反

 

以下脚本用于测试一元运算符:


var result = 1; // result is now 1

result--;  // result is now 0

println(result);

result++; // result is now 1

println(result);

result = -result; // result is now -1

println(result);

var success = false;

println(success); // false

println(not success); // true

 

递增/递减运算符可以在操作数之前(前缀)或之后(后缀)应用。代码
result++;

++result;
都将导致
result
的值加 1。二者之间的唯一区别就是前缀版本
(
++result
) 得到的是递增后的值,而后缀版本 (
result++
)
得到的是原始值。(您可以通过以下方法来记忆:
++result
先执行递增再获得值,而
result++

先获得值再执行递增。)如果您只是执行简单的递增/递减,则选择哪个版本都一样。但是,如果您将该运算符作为较大表达式的一部分进行使用,则选择不同的版
本会对结果产生很大的影响。

以下脚本说明了这种区别:


var result = 3;

result++;

println(result); // result is now 4

++result;

println(result); // result is now 5

println(++result); // result is now 6

println(result++); // this still prints 6!

println(result); // but the result is now 7

 

相等和关系运算符


相等和关系运算符确定一个操作数是大于、小于、等于还是不等于另一个操作数。


== 等于

!= 不等于

> 大于

>= 大于或等于

< 小于

<= 小于或等于

 

以下脚本用于测试这些操作数:


def num1 = 1;

def num2 = 2;

println(num1 == num2); // prints false

println(num1 != num2); // prints true

println(num1 > num2);  // prints false

println(num1 >= num2); // prints false

println(num1 < num2);  // prints true

println(num1 <= num2); // prints true

 

条件运算符


条件与 (and) 和条件或 (or)
运算符用于对两个布尔表达式执行条件运算。这些运算符会表现出“短路”行为,也就是说,仅在必要时才计算第二个操作数:例如,对于
and

运算,如果第一个表达式的结果为 false,将不计算第二个表达式。对于
or
运算,如果第一个表达式的结果为
true

将不计算第二个表达式。


and

or

 

以下脚本定义了
username
password

变量,然后输出各个条件的匹配项,从而说明了这些运算符的用法:


def username = "foo";

def password = "bar";

if ((username == "foo") and (password == "bar")) {

println("Test 1: username AND password are correct");

}

if ((username == "") and (password == "bar")) {

println("Test 2: username AND password is correct");

}

if ((username == "foo") or (password == "bar")) {

println("Test 3: username OR password is correct");

}

if ((username == "") or (password == "bar")) {

println("Test 4: username OR password is correct");

}

 

输出为:


Test 1: username AND password are correct

Test 3: username OR password is correct

Test 4: username OR password is correct

 

类型比较运算符


instanceof

运算符将对象与指定的类型相比较。您可以使用该运算符来确定某个对象是否为特定类的实例:


def str1="Hello";

println(str1 instanceof String);  // prints true

def num = 1031;

println(num instanceof integer); // prints true

 

在本教程的最后一课中深入了解类和继承后,您将发现该运算符非常有用。

asdtiang 2010-01-15 13:03 发表评论
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: