我有类似的字符串:
String value = "13,14,15,16,17"
但我不知道有多少数字与逗号分离。
我想与变量说比较:
String varValue = "16"
它可能处于任何位置......
我想比较这两个字符串变量.... 请任何人帮忙吗?
答案 0 :(得分:3)
你可以这样做:
String values = '13,14,15,16,17'
String required = '16'
values.tokenize( ',' ).with { toks ->
println "There are ${toks.size()} elements in the list"
println "The list contains $required is ${toks.contains( required )}"
println "It is at position ${toks.indexOf( required )}"
}
打印
There are 5 elements in the list
The list contains 16 is true
It is at position 3
答案 1 :(得分:0)
使用split
方法将数字放入数组中,然后进行比较。
此处:http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/String.html
答案 2 :(得分:0)
您可以使用split
方法接收Array
。将Array
转换为List
将允许您使用一些辅助函数,例如contains
和indexOf
,这些函数可用于返回令牌是否存在或者是否存在令牌。
String value = "13,14,15,16,17";
//Checks existence
boolean contains = Arrays.asList(value.split(",")).contains("16");
//Returns position
int pos = Arrays.asList(value.split(",")).indexOf("16") + value.split(",").length + 1;
这些示例都使用Java。
答案 3 :(得分:0)
不太明白你的问题。
不知道有多少数字与逗号分离
使用String方法split()
我想与变量说比较:String varValue =“16”
使用String方法contains()
答案 4 :(得分:0)
如果您使用的是Java,那么可以通过以下方式实现此目的:
1.将输入字符串拆分为数组
2.将该数组转换为列表。
现在
a)要查找用逗号分隔的总元素,请使用:
尺寸()。
b)要查找列表是否包含必需元素,请使用: 含有()。
c)要查找列表中元素的位置,请使用: 的indexOf()
所以代码看起来像:
import java.util.Arrays;
import java.util.List;
公共课测试{
public static void main(String [] args){
String inputString = "13,14,15,16,17";
String element = "16";
// Convert the string into array.
String values[] = inputString.split(",");
// Create a list using array elements.
List<String> valList = Arrays.asList(values);
System.out.println("Size :" + valList.size());
System.out.println("List contains 5 " + valList.contains(element));
System.out.println("Position of element" + valList.indexOf(element));
}
}