添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
卖萌的葡萄酒  ·  JMeter + Groovy: How ...·  1 周前    · 
腼腆的小马驹  ·  Jmeter JSR223 Groovy ...·  1 周前    · 
眉毛粗的水龙头  ·  Groovy 字符串_w3cschool·  1 月前    · 
千杯不醉的脆皮肠  ·  Groovy ...·  1 月前    · 
腼腆的打火机  ·  模块:pinia | Pinia·  1 周前    · 
深沉的勺子  ·  LibriVox·  2 周前    · 
知识渊博的蟠桃  ·  Library Search·  2 月前    · 

【Groovy】Groovy 方法调用 ( 字符串切割 | 使用 Java 语法切割字符串 | 使用 Groovy 语法切割字符串直接为变量赋值 | 数组赋值给变量 变量个数小于等于数组长度 )

【Groovy】Groovy 方法调用 ( 字符串切割 | 使用 Java 语法切割字符串 | 使用 Groovy 语法切割字符串直接为变量赋值 | 数组赋值给变量 变量个数小于等于数组长度 )

一、字符串切割

在 Android 中的 Gradle 配置中 , 最常用的用法是 , 将 build.gradle 中的 dependencies 依赖中的 org.codehaus.groovy:groovy-all:3.0.5 函数库进行处理 ;

dependencies {
    compile 'org.codehaus.groovy:groovy-all:3.0.5'
    testCompile group: 'junit', name: 'junit', version: '4.12'

org.codehaus.groovy:groovy-all:3.0.5 字符串中存在冒号 , 依据 " : " 将字符串分割开来 ;

1、使用 Java 语法切割字符串

使用 Java 语法 , 切割上述字符串 ,

def libName = "org.codehaus.groovy:groovy-all:3.0.5"
// I. 使用 Java 语法切割
def names = libName.split(":")
// 打印切割结果
// [org.codehaus.groovy, groovy-all, 3.0.5]
println names

执行结果 :

[org.codehaus.groovy, groovy-all, 3.0.5]
2、使用 Groovy 语法切割字符串直接为变量赋值 

使用 Groovy 语法切割字符串 , 并使用 (group, name, version) 接收切割后的字符串数组元素的值 , 切割后数组的 3 个元素 , 分别赋值给 group , name , version 变量 ;

def libName = "org.codehaus.groovy:groovy-all:3.0.5"
// II. Groovy 中切割上述字符串的方法
// 自动将 libName 按照 ":" 切割出来的数组元素
// 分别赋值给 group , name , version 变量
def (group, name, version) = libName.split(":")
// 打印结果 :
// group : org.codehaus.groovy , name : groovy-all , version : 3.0.5
println "group : $group , name : $name , version : $version"

执行结果 :

group : org.codehaus.groovy , name : groovy-all , version : 3.0.5
3、数组赋值给变量 变量个数小于等于数组长度 

如果字符串分割出的数组有 3 个元素 , 如果 赋值给 2 个变量 , 就将 前两个数组元素 进行赋值 ;

这里注意 : 赋值的变量 可以少于 分割的数组长度 , 不能多于数组长度 , 否则会产生越界异常 ;

def libName = "org.codehaus.groovy:groovy-all:3.0.5"
// 如果分割出的数组有 3 个元素
// 但是赋值给 2 个变量 , 就将 前两个数组元素 进行赋值
// 注意 : 赋值的变量 可以少于 分割的数组长度 , 不能多于数组长度 , 否则会产生越界异常
def (group2, name2) = libName.split(":")
// 打印结果 :
// group2 : org.codehaus.groovy , name2 : groovy-all
println "group2 : $group2 , name2 : $name2"

执行结果 :

group2 : org.codehaus.groovy , name2 : groovy-all
二、完整代码示例 


完整代码示例 :

def libName = "org.codehaus.groovy:groovy-all:3.0.5"
// I. 使用 Java 语法切割
def names = libName.split(":")
// 打印切割结果
// [org.codehaus.groovy, groovy-all, 3.0.5]
println names
// II. Groovy 中切割上述字符串的方法
// 自动将 libName 按照 ":" 切割出来的数组元素
// 分别赋值给 group , name , version 变量
def (group, name, version) = libName.split(":")
// 打印结果 :
// group : org.codehaus.groovy , name : groovy-all , version : 3.0.5
println "group : $group , name : $name , version : $version"
// 如果分割出的数组有 3 个元素
// 但是赋值给 2 个变量 , 就将 前两个数组元素 进行赋值
// 注意 : 赋值的变量 可以少于 分割的数组长度 , 不能多于数组长度 , 否则会产生越界异常
def (group2, name2) = libName.split(":")
// 打印结果 :
// group2 : org.codehaus.groovy , name2 : groovy-all
println "group2 : $group2 , name2 : $name2"

执行结果 :

[org.codehaus.groovy, groovy-all, 3.0.5]
group : org.codehaus.groovy , name : groovy-all , version : 3.0.5
group2 : org.codehaus.groovy , name2 : groovy-all