java获取数组连续相同元素下标
public static Map<String, String> arraySameIndex(String[] array){
Map<String, String> map = new HashMap<String, String>();
for(int i = 0; i < array.length; i++){
String h = array[i];
boolean flag = false;
for (int j = 0; j < i; j++) {
if(array[j]==h){
flag = true;
}
}
if(!flag){
StringBuffer sb = new StringBuffer();
for (int j = 0; j < array.length; j++) {
if(h==array[j]){
sb.append(",").append(j);
}
}
sb.delete(0, 1).insert(0, "[").append("]");
String newKey = sb.toString().replace("[", "").replace("]", "");
String[] keyArray = newKey.split(",");
String indexMapKey = keyArray[0]+"_"+keyArray[keyArray.length-1];
System.out.println("开始下标:"+keyArray[0]+" 结束下标:"+keyArray[keyArray.length-1]);
map.put(indexMapKey, indexMapKey);
}
}
return map;
}public static void main(String[] args) { //获取连续相同元素114的下标,也就是3 - 4
String[] str = {"110","110","113","114","114"};
System.out.println(arraySameIndex(str));
}声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: java基础--输出数组中指定元素的下标
- 下一篇: java如何获得数组中指定元素的位置
