参考:Operators —— 运算符


01   Relational_Operators 比较运算符。
02   Mathematical_Operators 数学运算符。
03   Logical_Operators 逻辑运算符。
04   Bitwise_Operators 位运算符。
05   Matrix_Operators 矩阵运算符。 
06   Minimum_and_Maximum_Operators 最大最小操作符。
07   Operator_Precedence 运算符优先级。 
08   Assignment_and_Compound_Assignment 赋值和复合赋值。
09   Other_Operators 其他操作符。

序号 名称    

功能说明 & 语法 & 举例

01 Relational Operators

比较运算符。

 EQ  

等于,=,Equal to

 NE  

不等于 ≠,Not equal to

 GE  

大于等于,≥,Greater than or equal to

 GT  

大于,>,Greater than

 LE  

小于等于,≤,Less than or equal to

 LT
 

小于,<,Less than

 02 Mathematical Operators

数学运算符。

+  

加法,字符串连接

 ++  

自增

-  

减法,负号

 --  

自减

 *  

乘法

 /  

除法

 ^  

幂运算

 MOD  

模,取余数

   
IDL> PRINT, 'alex' + ' ' + 'lee'
alex lee IDL> 2^0.5
1.4142135 IDL> PRINT, 9 MOD 5
4
03 LogicalOperators

逻辑运算符。

 &&  

逻辑与,都真才真,非0的数字、非空的字符串等都认为是真

 ||  

逻辑或,有一个真就为真

 ~  

逻辑非,取反

   
IDL> PRINT, 5 && 7
1 IDL> PRINT, 4 && 0
0 IDL> PRINT, "" && "sun"
0 IDL> PRINT, "alex" && "sun"
1
04 BitwiseOperators

位运算符。

 AND  

按位与
用于判断奇偶数:奇数 AND 1 = 1、偶数 AND 1 = 0

 OR  

按位或

 NOT  

取反

 XOR  

按位异或
XOR 运算的逆运算是它本身,也就是说两次异或同一个数最后结果不变

   
IDL> FOR I = 1,5 DO PRINT, I, I AND 1
1 1
2 0
3 1
4 0
5 1 IDL> FOR I = 1,5 DO PRINT, I, I OR 1
1 1
2 3
3 3
4 5
5 5
05 MatrixOperators

矩阵运算符。

 #  

A#B 表示 A 的列乘以 B 的行

 ##  

A##B 表示 A 的行乘以 B 的列

06
Minimum and Maximum Operators

最大最小操作符。

 <  

取最小的一个数。

 >  

取最大的一个数

   
IDL> 5 < 3
3 IDL> 5 < 3 < 4 < 6
3 IDL> 5 > 3
5 IDL> 5 > 3 > 4 > 6
6
07 Operator Precedence

运算符优先级。

 1级  

()
[]

 2级  

.
[]
()

3级

 

*
^
++
--

4级

 

*
#
##
/
MOD

5级

 

+
-
<
>
NOT
~

6级

 

EQ
NE
LE
LT
GE
GT

7级

 

AND
OR
XOR

8级

 

&&
||

9级

  ?:
   
IDL> i = 3
08 Assignment and Compound Assignment

赋值和复合赋值。

 =  

赋值

op=  

复合赋值
op 可以是下面操作符中的一个:##、#、*、+、-、/、<、>、^、AND、EQ、GE、GT、LE、LT、MOD、NE、OR、XOR

   
IDL> A = 5
IDL> A += 3
IDL> A
8
IDL> A -= 3
IDL> A
5
IDL> A <= 3
IDL> A
3
IDL> A *= 3
IDL> A
9
IDL> A <= 3
IDL> A
3
IDL> A /= 3
IDL> A
1
09 OtherOperators

其他操作符。

 []  

数组操作符

   
IDL> C = [0, 1, 3]
IDL> PRINT, C
0 1 3
IDL> PRINT, [C, 5]
0 1 3 5
IDL> PRINT, [-1, C]
-1 0 1 3
IDL> PRINT, [C, C]
0 1 3 0 1 3
IDL> PRINT, [[C], [C]]
0 1 3
0 1 3
[::]  

冒号运算符。
-----------------------------------------------------------------------------------------------
Result = [start: finish]
-----------------------------------------------------------------------------------------------
Result = [start: finish: increment]
-----------------------------------------------------------------------------------------------
? start:开始索引
? finish:结束索引
? increment:增量

   
IDL> A = INDGEN(8)
IDL> A
0 1 2 3 4 5 6 7
IDL> A[1:5]
1 2 3 4 5
IDL> A[0:7:2]
0 2 4 6
 ()  

控制运算的组表达式。

   
IDL> PRINT, 3 + 4 * 2 ^ 2 / 2
11
IDL> PRINT, (3 + (4 * 2) ^ 2 / 2)
35
 ?:  

条件表达式。
提供 IF...THEN...ELSE 的简答表达式。

   
IDL> A=6 & B=4
IDL> Z = (A GT B) ? A : B
IDL> PRINT, Z
6
IDL> Z = (A LT B) ? A : B
IDL> PRINT, Z
4
 .  

方法调用。

 ->  

方法调用。

         

【218】◀▶ IDL 操作符号说明的更多相关文章

  1. Python 集合set添加删除、交集、并集、集合操作符号

    在Python中集合set是基本数据类型的一种,它有可变集合(set)和不可变集合(frozenset)两种.创建集合set.集合set添加.集合删除.交集.并集.差集的操作都是非常实用的方法. 1. ...

  2. Mysql操作符号

    1.比较运算符:  =  相等  <> 不等于 != 这个也可以  >  大于  <  小于  >= 大于等于  <= 小于等于 2.逻辑运算符:  is null ...

  3. smarty 操作符号,大于、小于。。。

    eq相等,6 w% x7 w6 |3 _ne.neq不相等,( i" }" ~( `# V( t& C, k; [gt大于,lt小于,gte.ge大于等于,lte.le 小 ...

  4. C++ 第二课:操作符号的优先级

           优先级     操作符 1 () [] -> .   ::         ! ~ ++ -- 2 - (unary) * (dereference)   & (addre ...

  5. oozie调度sqoop脚本时操作符号替换

    oozie调度sqoop脚本时,sqoop中使用的sql查询语句,需要使用以下字符串替换操作符,否则会出现各种诡异的错误: //替换字符 < < Less than 小于 > > ...

  6. C语言的操作符号

    #include <iostream> int main(void) { int a = 100, b = 40; //理解++在前还后的区别: a = b++; //a = b ; b= ...

  7. 【170】◀▶ IDL 学习初体验-全

    IDL Reference 操作符号 数组 字符及字符串 结构体 指针 链表 & 哈希表 程序控制(循环.条件.跳转语句) 过程 & 函数 输入与输出 系统变量 文件系统操作 直接图形 ...

  8. c#操作MangoDB 之MangoDB CSharp Driver驱动详解

    序言 MangoDB CSharp Driver是c#操作mongodb的官方驱动. 官方Api文档:http://api.mongodb.org/csharp/2.2/html/R_Project_ ...

  9. linux shell字符串内置的常用操作(获取长度、查找、替换)

    在编写shell程序时,经常会涉及到字符串相关操作.有许多命令语句,如awk,sed都能够做字符串各种操作. 事实上shell内置一系列操作符号,能够达到相似效果,使用内部操作符会省略启动外部程序等时 ...

随机推荐

  1. Cocos2d-x 3.1.1 学习日志5--cocos2d-x3.1.1打飞机的实现

    近期学习了cocos2dx3.1.1的一些功能,认为和曾经版本号改的太多了. 所以就做了一个小项目--打飞机来练习练习,在这里我仅仅讲飞机实现的步骤,至于代码.回复5次就可以获得coco2d-x3.1 ...

  2. Foundation框架 - NSException类

    NSException类 WBStudentManager.h #import <Foundation/Foundation.h> NSString* const NameInvalidE ...

  3. create a backdoor deb package

    以下介绍怎样制作包括后门的deb安装包.以tree为例进行说明.利用apt-get下载安装包.--download-only表示仅仅下载不做其它处理. root@deb:~#apt-get downl ...

  4. 使用Pig对手机上网日志进行分析

    在安装成功Pig的基础上.本文将使用Pig对手机上网日志进行分析,详细过程例如以下: 写在前面: 手机上网日志文件phone_log.txt.文件内容 及 字段说明部分截图例如以下 需求分析 显示每一 ...

  5. PHP 5.6编译安装

    yum install openssl openssl-devel libxml2-devel libxml2 bzip2 bzip2-devel curl-devel php-mcrypt libm ...

  6. 记使用WaitGroup时的一个错误

    记使用WaitGroup时的一个错误 近期重构我之前写的server代码时,不当使用了WaitGroup,碰到了个错误,记录下. package main import ( "fmt&quo ...

  7. js中变量的声明

    大家都知道js中变量的声明是要提前的,下面有4个样例: 1.if(!"t" in window){  var t = 1; }       alert(t);答案是undefine ...

  8. poj 2888 Magic Bracelet <polya定理>

    题目:http://poj.org/problem?id=2888 题意:给定n(n <= 10^9)颗珠子,组成一串项链,每颗珠子可以用m种颜色中一种来涂色,如果两种涂色方法通过旋转项链可以得 ...

  9. maven的介绍和安装

    一.maven简介 Maven是一个项目管理和综合工具.Maven提供了开发人员构建一个完整的生命周期框架.开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期. 在 ...

  10. JQuery ajax 把后台返回的List数据 遍历出来 赋值给div

    1.效果 2.前端代码 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <he ...