Java找出列表相同元素中间的数据
package com
.cj
.cgv
.array
;
public class ArrayTest {
private static int[] arr
= new int[]{1, 2, 3, 4, 5, 6, 7, 6, 4, 6};
public static void main(String
[] args
) {
int repect
[] = getRepeatValueByArray(arr
);
itar(repect
);
for (int i
= 0; i
< repect
.length
; i
++) {
if (repect
[i
] != 0) {
int count
= getNumberCount(arr
,repect
[i
]);
System
.out
.println(repect
[i
]+"出现次数---"+count
);
for (int j
= 1; j
<= count
; j
++) {
int index
= getIndex(arr
, repect
[i
],j
);
System
.out
.println(repect
[i
]+"第"+j
+"次出现的下标"+index
);
if (count
-j
>=1){
if (arr
[index
] == arr
[index
+ 2]) {
System
.out
.println(arr
[index
] + "中间的数字" + arr
[index
+1]);
}
}
}
repect
= delRepect(repect
,repect
[i
]);
}
}
}
private static int getNumberCount(int array
[], int number
) {
int count
= 0;
for (int i
= 0; i
< array
.length
; i
++) {
if (array
[i
] == number
) {
count
++;
}
}
return count
;
}
private static int getIndex(int array
[], int number
,int index
) {
int count
= 0;
for (int i
= 0; i
< array
.length
; i
++) {
if (array
[i
] == number
) {
count
++;
if(count
==index
){
return i
;
}
}
}
return 0;
}
private static void itar(int[] array
) {
for (int i
= 0; i
< array
.length
; i
++) {
if (array
[i
] != 0) {
System
.out
.println(array
[i
]);
}
}
}
private static int[] delRepect(int array
[],int number
){
for (int i
= 0; i
< array
.length
; i
++) {
if (array
[i
]>0){
if (array
[i
] == number
){
array
[i
] =0;
}
}
}
return array
;
}
private static int[] setRepeat(int[] repeat
, int val
) {
for (int i
= 0; i
< repeat
.length
; i
++) {
if (repeat
[i
] == 0) {
repeat
[i
] = val
;
break;
}
}
return repeat
;
}
private static int[] getRepeatValueByArray(int[] array
) {
int[] repeat
= new int[20];
int count
= 0;
for (int i
= 0; i
< array
.length
; i
++) {
for (int j
= i
; j
< array
.length
; j
++) {
if (array
[i
] == array
[j
]) {
count
++;
if (count
> 1) {
repeat
= setRepeat(repeat
, array
[i
]);
debug("数字" + array
[i
] + "有重复");
break;
}
}
}
count
= 0;
}
return repeat
;
}
private static void debug(String msg
) {
System
.out
.println(msg
);
}
}
转载请注明原文地址: https://lol.8miu.com/read-3652.html