本文目錄一覽:
- 1、java中怎麼找出數組中重複的數並去除?
- 2、java 刪除數組中重複元素
- 3、java中怎麼樣子找出數組中重複的數,並去除
- 4、java去掉數組裡的重複的數據
- 5、JAVA關於順序數組數據去重,效率最高的方式是什麼?
- 6、JAVA如何去除數組中每個元素中重複的內容
java中怎麼找出數組中重複的數並去除?
java中找出數組中重複的數並去除的代碼如下:
public static void testA() {
String [] str = {“Java”, “C++”, “Php”, “C#”, “Python”, “C++”, “Java”};
for (String elementA:str ) {
System.out.print(elementA + ” “);
}
ListString list = new ArrayListString();
for (int i=0; istr.length; i++) {
if(!list.contains(str[i])) {
list.add(str[i]);
}
}
System.out.println();
String[] newStr = list.toArray(new String[1]); //返回一個包含所有對象的指定類型的數組
for (String elementB:newStr ) {
System.out.print(elementB + ” “);
}
System.out.println();
}
所謂數組,是無序的元素序列。 若將有限個類型相同的變數的集合命名,那麼這個名稱為數組名。組成數組的各個變數稱為數組的分量,也稱為數組的元素,有時也稱為下標變數。用於區分數組的各個元素的數字編號稱為下標。數組是在程序設計中,為了處理方便, 把具有相同類型的若干元素按無序的形式組織起來的一種形式。 這些無序排列的同類數據元素的集合稱為數組。
舉例:
int a[10]; 說明整型數組a,有10個元素。
float b[10],c[20]; 說明實型數組b,有10個元素,實型數組c,有20個元素。
char ch[20]; 說明字元數組ch,有20個元素。
數組中的所有元素都具有相同類型(這一點和結構或類中的欄位不同,它們可以是不同類型)。數組中的元素存儲在一個連續性的內存塊中,並通過索引來訪問(這一點也和結構和類中的欄位不同,它們通過名稱來訪問)。
java 刪除數組中重複元素
package com.akfucc.zhidao;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
public class P124876743 {
public static void main(String[] args) {
int[] nums = { 1, 2, 3, 3, 3, 3, 4 };
ListInteger numList = new ArrayListInteger();
for (int i : nums)
numList.add(i);
System.out.println(numList);
// 做刪除
IteratorInteger it = numList.iterator();
int temp = -1;
if (it.hasNext())
temp = it.next();
while (it.hasNext()) {
int i = it.next();
if (i == temp) {
it.remove();
} else {
temp = i;
}
}
System.out.println(numList);
}
}
java中怎麼樣子找出數組中重複的數,並去除
;
public static void main(String[] args) {
//可以換種思路,把數組放到set裡面(set的值不會重複)就可以去重了
Integer[] arr = {85,4,2,6,11,4,5,8,9};
SetInteger set = new HashSetInteger();
for(Integer i : arr)
set.add(i);
for(Object j: set.toArray())
System.out.print(j + ” “);
}
java去掉數組裡的重複的數據
計數方法,你在遍曆數組外邊int 一個數=0,如果某個數和數組【i】相等,就++
刪除方法我用的是笨方法,因為數組不能直接增刪操作,要先算出新數組的長度,在遍歷出去,我是取巧了先排序了,當然你也可以用其他排序方法排序
public static void main(String[] args) {
int [] arr={1,2,2,3,4,5};
int len=arr.length;
Arrays.sort(arr);
int leng=0;
for( int i=0;iarr.length-1;i++){
if(arr[i]!=arr[i+1]){
leng++;
}
}
if(arr[arr.length-2]!=arr[arr.length-1]){
leng++;
}
System.out.println(leng);
int newlength=0;
int []newArr=new int[leng];
for( int i=0;iarr.length-1;i++){
if(arr[i]!=arr[i+1]){
newArr[newlength]=arr[i];
newlength++;
}
}
if(arr[arr.length-2]!=arr[arr.length-1]){
newArr[newlength]=arr[arr.length-1];
}
for(int i=0;inewArr.length;i++){
System.out.println(newArr[i]);
}
}
JAVA關於順序數組數據去重,效率最高的方式是什麼?
JAVA關於順序數組數據去重,效率最高的方式是使用LinkedHashSet也是Set,set的特徵就是對重複的元素只保存一個,LinkedHashSet只是在內部使用鏈表維護元素插入的順序
package com.question;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.util.LinkedHashSet;
/**
* delete the conflict String.
*
* @author Xxx
*/
public class Q16 {
/**
* generate the text.
*
*/
public void init() {
// write file
OutputStream outputStream = null;
try {
outputStream = new FileOutputStream(“C:/init.txt”);
for (int i = 0; i 100000; i++) {
for (int j = 0; j 2; j++) {
outputStream.write((“Hello” + i).getBytes());
outputStream.write(“\r\n”.getBytes());
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (outputStream != null) {
outputStream = null;
}
}
}
/**
* filter the string.
*
* @return
*/
public LinkedHashSetString filter() {
// create a LinkedHashSet project.
LinkedHashSetString linkedHashSet = new LinkedHashSetString();
try {
// read the file.
InputStream inputStream = new FileInputStream(“C:/init.txt”);
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String line = bufferedReader.readLine();
// add the string to the LinkedHashSet
while(line != null) {
linkedHashSet.add(line);
line = bufferedReader.readLine();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
// return the result.
return linkedHashSet;
}
@Deprecated
public static void main(String[] args) {
Q16 q16 = new Q16();
// q16.init();
LinkedHashSetString linkedHashSet = q16.filter();
System.out.println(linkedHashSet.size());
}
}
JAVA如何去除數組中每個元素中重複的內容
java數組中去掉重複數據可以使用set集合,set本身內部是不保存重複的數據的,如下代碼:
import java.util.Arrays;import java.util.Set;import java.util.TreeSet; public class ceshi { public static void main(String[] args) { int[] testArr = { 5, 5, 1, 2, 3, 6, -7, 8, 6, 45, 5 };//新建一個int類型數組 System.out.println(Arrays.toString(testArr)); SetInteger set = new TreeSetInteger();//新建一個set集合 for (int i : testArr) { set.add(i); } Integer[] arr2 = set.toArray(new Integer[0]); // 數組的包裝類型不能轉 只能自己轉;吧Integer轉為為int數組; int[] result = new int[arr2.length]; for (int i = 0; i result.length; i++) { result[i] = arr2[i]; } System.out.println(Arrays.toString(arr2)); }}
運行結果如下:
原創文章,作者:TGVS,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/144121.html