Java中Set实现中的add()方法不起作用

时间:2018-06-16 10:19:10

标签: java arraylist set

我正在尝试用Java中的ArrayList实现我自己的Set。我正在测试add()方法,并且它不会在Set中添加元素。我知道如果在ArrayList中添加了一个元素,那么List.add(input)将返回true,所以问题就在那里。有人能帮助我理解我做错了什么吗? 这是Set add()方法的实现:

import java.util.ArrayList; import java.util.Collection;

public class Set<E> implements Collection<E> {
    private ArrayList<E> List = new ArrayList<>();

    public boolean add(E input) {
        if (contains(input)) {
            return false;
        }
        return List.add(input);
    }

这是我运行的测试方法:

import java.util.*;

public class TestSet {

    public static Set<Integer> set = new Set<Integer>();

    public static void main(String[] args) {
        System.out.println("Enter a set :");
        Scanner userInput = new Scanner(System.in);
        set = new Set<Integer>();

        set.add(userInput.nextInt());
        System.out.println(set);
    }  

运行该方法后我在控制台上获得的输出是:

Enter a set :
1
Set@677327b6

1 个答案:

答案 0 :(得分:0)

您似乎没有使用 File.Copy(openFileDialogOdaberiSliku.FileName,destinationSave ); 方法或未正确使用它,您需要使用:

toString