赋值,算术和一元运算符

赋值,算术和一元运算符

翻译自ORACLE Java Tutorials –Assignment, Arithmetic, and Unary Operators

简单分配算子

您将遇到的最常见的运算符之一是简单的赋值运算符“=”。你在自行车课上看到这个操作符它将其右侧的值分配给左侧的操作数:

 int cadence = 0;
 int speed = 0;
 int gear = 1;

此操作符也可用于对象分配对象引用,如创建对象中所述。

算术运算符

Java编程语言提供执行加法,减法,乘法和除法的操作符。有一个很好的机会,你会认识到他们的基础数学的同行。可能看起来很新的唯一符号是“%”,它将一个操作数除以另一个,并返回剩余部分作为结果。

操作符说明
+加法运算符(也用于字符串连接)
-减法运算符
*乘法运算符
/除操作符
取模操作符

以下程序ArithmeticDemo测试算术运算符。

class ArithmeticDemo {
   public static void main(String [] args){

        int result = 1 + 2;
        //结果现在是3
        System.out.println(“1 + 2 =”+ result);
        int original_result = result;

        result = result - 1;
        //结果现在是2
        System.out.println(original_result +“ - 1 =”+ result);
        original_result = result;

        result = result * 2;
        //结果现在是4
        System.out.println(original_result +“* 2 =”+ result);
        original_result = result;

        result = result / 2;
        //结果现在是2
        System.out.println(original_result +“/ 2 =”+ result);
        original_result = result;

        result = result + 8;
        //结果现在是10
        System.out.println(original_result +“+ 8 =”+ result);
        original_result = result;

        result = result%7;
        // 结果现在是3
        System.out.println(original_result +“%7 =”+ result);
    }
}

此程序打印如下:

1 + 2 = 3
3 - 1 = 2
2 * 2 = 4
4 / 2 = 2
2 + 8 = 10
10 % 7 = 3

您还可以将算术运算符与简单赋值运算符组合以创建复合分配。例如,x +=1; x = x + 1;都将x的值增加1。

+运算符也可以用于将两个字符串连接(连接)在一起,如下面的ConcatDemo程序所示:

class ConcatDemo {
    public static void main(String[] args){
        String firstString = "This is";
        String secondString = " a concatenated string.";
        String thirdString = firstString+secondString;
        System.out.println(thirdString);
    }
}

在该程序结束时,变量thirdString包含”This is a concatenated string.”,它被打印到标准输出。

一元运算符

一元运算符只需要一个操作数; 它们执行各种操作,例如将值递增/递减1,否定表达式或反转布尔值。

操作符说明
+一元加运算符; 表示正值(但是,数字为正数)
-一元减运算符 否定一个表达
++增量算子 将值递增1
- -递减运算符; 将值减1
逻辑互补算子 反转布尔值的值

以下程序,UnaryDemo,测试一元运算符:

class UnaryDemo {

    public static void main(String[] args) {

        int result = +1;
        // result 现在是 1
        System.out.println(result);

        result--;
        // result 现在是 0
        System.out.println(result);

        result++;
        // result 现在是 1
        System.out.println(result);

        result = -result;
        // result 减1 
        System.out.println(result);

        boolean success = false;
        // false
        System.out.println(success);
        // true
        System.out.println(!success);
    }
}

递增/递减运算符可以应用在前缀(前缀)之前或之后(后缀)操作数。 代码result++; 和++result; 将结果的结果增加一个。 唯一的区别是前缀版本(++ result)评估为递增值,而postfix版本(result ++)计算为原始值。 如果您只是执行一个简单的增量/减量,那么选择哪个版本并不重要。 但是,如果您在较大的表达式中使用此运算符,那么您选择的运算符可能会有显着差异。

以下程序PrePostDemo说明了前缀/后缀一元增量运算符:

class PrePostDemo {
    public static void main(String[] args){
        int i = 3;
        i++;
        // prints 4
        System.out.println(i);
        ++i;               
        // prints 5
        System.out.println(i);
        // prints 6
        System.out.println(++i);
        // prints 6
        System.out.println(i++);
        // prints 7
        System.out.println(i);
    }
}
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值