东行天下

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
统计
 

一、数据类型

java String,下面的是内置数据类型,强类型,一旦定义后无法修改变量类型

复制代码
1 byte -这是用来表示字节值。例如2。
2 short -这是用来表示一个短整型。例如10。
3 int -这是用来表示整数。例如1234。
4 long -这是用来表示一个长整型。例如10000090。
5 float -这是用来表示32位浮点数。例如12.346 double -这是用来表示64位浮点数,这些数字是有时可能需要的更长的十进制数表示。例如12.34565657 char -这定义了单个字符文字。例如“A”。
8 Boolean -这表示一个布尔值,可以是true或false。
9 String -这些是以字符串的形式表示的文本。例如,“Hello World”。
复制代码

def -- 定义任意变量类型的关键字

二、常用方法

1.string

 GString又叫可扩展字符串,用于""中,如下,c就是可扩展字符串

1
2
3
4
println "a=${3+2}"
def b = "hello"
def c = "${b} world"
println c

  

复制代码
 1 job_name = "devops05-app-service_CI"
 2 
 3 // ["devops05", "app", "service_CI"]
 4 bu_name = job_name.split('-')[0]
 5 println(bu_name)  //devops05
 6 // contains
 7 println(job_name.contains("CI")) //true
 8 
 9 //size/length
10 println("size: ${job_name.size()}")
11 println("length: ${job_name.length()}")
12 
13 //endsWith()
14 println("enswith CI: ${job_name.endsWith('CI')}") //true
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<br>//List
tools = ["gitlab", "jenkins", "maven", "sonar"]
 
pipeline {
    agent any
 
    stages{
        stage("run"){
            steps{
                script{
                    // script
                    println(tools)
 
                    // add
                    println(tools + "k8s")
                    println(tools)
                    println(tools << "ansible") //改变原对象
                    println(tools)
                    println(tools - "maven")
                    println(tools)
 
                    tools.add("maven")
                    println(tools)
                    println(tools.getClass())
 
                    // contains
                    println(tools.contains("jenkins"))
 
                    // length
                    println(tools.size())
 
                    // index
                    println(tools[0])
                    println(tools[-1])
 
                }
            }
        }
    }
}

  

 

map

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
//Map
user_info = ["id": 100, "name": "jenkins"]
 
pipeline {
    agent any
 
    stages{
        stage("run"){
            steps{
                script{
                    // script
                    println(user_info)
 
                    // get name
                    println(user_info["name"])
                    println(user_info["id"])
 
                    // =
                    user_info["name"] = "jenkinsX"
                    println(user_info)
 
                    // key
                    println(user_info.containsKey("name"))
                    println(user_info.containsValue(100))
 
                    // keys
                    println(user_info.keySet())
 
                    // remove
                    user_info.remove("name")
                    println(user_info)
 
                }
            }
        }
    }
}

  

 三、条件语句

1.if/else

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
//if
// dev == dev  stag == master
branchName = "dev"
 
pipeline {
    agent any
 
    stages{
        stage("run"){
            steps{
                script {
                    // script
                    currentBuild.displayName = branchName
 
                    if ( branchName == "dev"){
                        println("deploy to dev....")
                        currentBuild.description = "deploy to dev...."
 
                    } else if (branchName == "master"){
                        println("deploy to stag....")
                        currentBuild.description = "deploy to stag...."
                    } else {
                        currentBuild.description = "error..."
                        println("error...")
                    }
                }
            }
        }
    }
}

2.switch

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
//switch
 
// dev == dev  stag == master
 
branchName = "dev"
 
 
pipeline {
    agent any
 
    stages{
        stage("run"){
            steps{
                script {
                    // script
 
                    currentBuild.displayName = branchName
 
                    switch(branchName) {
                        case "dev":
                            println("deploy to dev....")
                            currentBuild.description = "deploy to dev...." 
                            break
 
                        case "master":
                            println("deploy to stag....")
                            currentBuild.description = "deploy to stag...."
                            break
 
                        default:
                            currentBuild.description = "error..."
                            println("error...")
                            break
 
                    }
                }
            }
        }
    }
}

3.for

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
//for
users = [
            ["name": "zeyang", "role": "dev"],
            ["name": "zeyang1", "role": "admin"],
            ["name": "zeyang2", "role": "ops"],
            ["name": "zeyang3", "role": "test"]
        ]
 
pipeline {
    agent any
 
    stages{
        stage("run"){
            steps{
                script {
                    // script
                    // i = ["name": "zeyang", "role": "dev"]
 
                    user_names = []
                    for (i in users){
                        println(i["name"])
                        user_names << i["name"]
                    }
 
                    println(user_names)  // [zeyang, zeyang1, zeyang2, zeyang3]
 
                    // times
                    10.times {
                        println('hello')
                    }
 
                    10.times { i ->
                        println(i)
                    }
                }
            }
        }
    }
}

4.while

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// while
 
 
sleeps = true
 
pipeline {
    agent any
 
    stages{
        stage("run"){
            steps{
                script {
 
                    // script
 
                    while(sleeps){
                        println("sleep....")
                    }
 
                }
            }
        }
    }
}

 三、函数 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
//function
/*
def关键字 定义函数名为GetUserNameByID, 带有一个参数id;
函数体内的for循环遍历users的列表,如果id与参数id一致则返回用户的name;否则返回null;
*/
 
users = [
            ["id": 1, "name": "jenkins1"],
            ["id": 2, "name": "jenkins2"],
            ["id": 3, "name": "jenkins3"],
        ]
 
 
pipeline{
    agent any
 
    stages{
        stage("run"){
            steps{
                script {
                    //script
                    // 调用函数并打印返回值
                    name = GetUserNameByID(1)
                    println(name)   //jenkins1
                }
            }
        }
    }
}
 
 
// define GetUserName
def GetUserNameByID(id){
    for (i in users){
        if (i["id"] == id){
            return i["name"]
        }
    }
    return "null"
}

 四、异常

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// try catch
/*
如果println(a)失败(肯定失败,因为有语法错误)
catch捕获错误,并打印错误。
finally 总是执行。
error关键字可以抛出异常。
*/
pipeline{
    agent any
 
    stages{
        stage("run"){
            steps{
                script{
                    // script
                    try {
                        println(a)   // not define a  error
                    catch(Exception e){
                        println(e)
                        error "error..."
                    } finally {
                        println("always....")
                    }
 
                }
            }
        }
    }
}

  

 

posted on   东行天下  阅读(15)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· Qt个人项目总结 —— MySQL数据库查询与断言
 
点击右上角即可分享
微信分享提示