我有字段类型字符串,可以在上面获取两种类型的值:
- 简单字段,例如p1
- 复杂字段 p1/p2/p3/p4
现在我有两个问题:
- 由于检查是在循环中运行的,我如何能够尽可能轻松地识别出该类型是复杂的?
- 当我得到复杂类型时,我需要存储最后两个属性,例如 p3 和 P4?
只需使用拆分操作并检查长度。
String[] prop = strprop.split("/");
if(prop.length > 1){
String El = prop[prop.length];
String El0 = prop[prop.length-1];
}
要回答 1)我会使用(假设变量str
包含您的值):
str.contains("/"); // If true => complex type
对于 2):
String[] vals = str.split("/");
String lastVal = vals[vals.length-1];
String preLastVal = vals[vals.length-2];
请注意,您应该在尝试获取值之前检查数组长度,否则您可能会收到 ArrayIndexOutOfBoundsException。