Java使用循环从数组中删除重复项

Java使用循环从数组中删除重复项,java,arrays,Java,Arrays,这是我当前试图从包含整数的数组中删除重复项的尝试,但这不会给我任何结果。它只是不打印任何内容。任何帮助都将不胜感激 public static void duplicate(int numbers[], int size) { for (int i = 0; i < size; i++){ boolean duplicate = false; int b = 0; while (b < i){

这是我当前试图从包含整数的数组中删除重复项的尝试,但这不会给我任何结果。它只是不打印任何内容。任何帮助都将不胜感激

    public static void duplicate(int numbers[], int size)
    {
      for (int i = 0; i < size; i++){
        boolean duplicate = false;
        int b = 0;
        while (b < i){
          if (numbers[i] == numbers[b])
             duplicate = true;
          b++;}
        if (duplicate = false)
          System.out.print(numbers[i] + " ");}
    } 
公共静态无效副本(整数[],整数大小)
{
对于(int i=0;i
试试这个:

public static void duplicate(int numbers[], int size)
{
  for (int i = 0; i < size; i++){
    boolean duplicate = false;
    int b = 0;
    while (b < i){
      if (numbers[i] == numbers[b])
         duplicate = true;
      b++;}
    if (duplicate == false)
      System.out.print(numbers[i] + " ");}
} 
公共静态无效副本(整数[],整数大小)
{
对于(int i=0;i

您需要在if语句中使用
=
而不是
=

您还可以使用
哈希集或LinkedHashSet来保留顺序

public void removeDupInIntArray(int[] ints){
    Set<Integer> setString = new LinkedHashSet<Integer>();
    for(int i=0;i<ints.length;i++){
        setString.add(ints[i]);
    }
    System.out.println(setString);
}
public void removeDupInIntArray(int[]int){
Set setString=new LinkedHashSet();

对于(int i=0;i来说,最好的选择是使用集合(Hash Linkedhash),这样就可以避免重复了

这应该很好。只要在最后一个if中更改=with==即可。