代码拉取完成,页面将自动刷新
同步操作将从 ssssssss-team/magic-script 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
magic-script
是一款基于JVM的脚本语言,目前主要是为magic-api
项目设计。
关键字 | 含义 |
---|---|
var | 定义变量 |
if | 用在条件语句中,表明当条件不成立时的分支 |
for | 循环语句 |
in | 与 for 配合使用 |
continue | 执行下一次循环 |
break | 跳出循环 |
return | 终止当前过程的执行并正常退出到上一个执行过程中 |
try | 用于捕获可能发生异常的代码块 |
catch | 与 try 关键字配合使用,当发生异常时执行 |
finally | 与 try 关键字配合使用,finally 块无论发生异常都会执行 |
import | 导入 Java 类或导入已定义好的模块 |
as | 与 import 关键字配合使用,用作将导入的 Java类或模块 命名为一个本地变量名 |
new | 创建对象 |
true | 基础类型之一,表示 Boolean 的:真值 |
false | 基础类型之一,表示 Boolean 的:假值 |
null | 基础类型之一,表示 NULL 值 |
数学运算 | 比较运算 | 逻辑运算 | |||
---|---|---|---|---|---|
+ | 加法 | < | 小于 | && | 并且 |
- | 减法 | <= | 小于等于 | || | 或者 |
* | 乘法 | > | 大于 | ||
/ | 除法 | >= | 大于等于 | ||
% | 取模 | == | 等于 | ||
!= | 不等于 |
类型 | 写法 |
---|---|
byte | `123b`、`123B` |
short | `123s`、`123S` |
int | `123` |
long | `123l`、`123L` |
float | `123f`、`123F` |
double | `123d`、`123D` |
BigDecimal | `123m`、`123M` |
boolean | `true`、`false` |
string | `'hello'` |
string | `"hello"` |
string | `"""多行文本块,主要用于编写SQL"""` |
lambda | `()=>expr`、`(param1,param2....)=>{...}` |
list | `[1,2,3,4,5]` |
map | {key : value,key1 : value} |
{\$key : "value"}//$key表示动态从变量中获取key值 |
您可以通过一元运算-
符将数字取反,例如-234
。要取反布尔表达式,可以使用!
运算符,例如!true
。
支持常见的算术运算符,例如1 + 2 * 3 / 4 % 2
23 < 34
,23 <= 34
,23 > 34
,23 >= 34
,true != false
,23 == 34
比较运算符结果为boolean
类型
除了一元运算!
符,您还可以使用&&
和||
。就像Java中一样,运算符也是一种短路运算符。如果&&
左边计算为false
,则不会计算右边。如果||
左侧为true,则不会计算右边
三元运算符是if
语句的简写形式,其工作方式类似于Java中,例如true ? "yes" : "no"
当前for循环只支持两种,循环集合或Map
import 'java.lang.System' as System;
var list = [1,2,3];
for(index,item in list){ //如果不需要index,也可以写成for(item in list)
System.out.println(index + ":" + item);
}
/*
结果:
0:1
1:2
2:3
*/
var sum = 0;
for(value in range(0,100)){ //包括0包括100
sum = sum + value; //不支持+= -= *= /= ++ -- 这种运算
}
return sum;
/*
结果:5050
*/
import 'java.lang.System' as System;
var map = {
key1 : 123,
key2 : 456
};
for(key,value in map){ //如果不需要key,也可以写成for(value in map)
System.out.println(key + ":" + value);
}
/*
结果:
key1:123
key2:456
*/
import 'java.lang.System' as system;//导入静态类并赋值给system作为变量
import 'javax.sql.DataSource' as ds;//从spring中获取DataSource并将值赋值给ds作为变量
import 'org.apache.commons.lang3.StringUtils' as string;//导入静态类并赋值给ds作为变量
System.out.println('调用System打印');//调用静态方法
System.out.println(ds);
System.out.println(string.isBlank('')); //调用静态方法
import 'java.util.Date' as Date;//创建之前先导包,不支持.*的操作
return new Date();
import log; //导入log模块,并定义一个与模块名相同的变量名
//import log as logger; //导入log模块,并赋值给变量 logger
log.info('Hello {}','Magic API!')
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。