2016-03-30 3 views
6

У меня есть класс, classA, который имеет конструктор, который использует объекты из другого класса, classB. Я использую эти объекты classB, чтобы сформировать набор в classA. Теперь у меня есть метод в classA, который настроен для возврата элементов набора, созданного в конструкторе.Как вернуть набор в Java

Это моя проблема: я не могу понять правильный синтаксис, чтобы возвращать заданные элементы.

Это мой код:

package testing; 
import java.util.*; 

public class classA { 

    public classA(classB x, classB y) { 
     Set<classB> setElements = new HashSet<classB>(); 
     setElements.add(x); 
     setElements.add(y); 

    public set<classB> getElements() { 
     return setElements; //THIS IS WHERE MY ERROR IS. HOW DO I RETURN A SET? 
+0

Вы исходите из javascript случайно? – HopefullyHelpful

+0

Нет, это мой первый набег на мир Java. У меня есть некоторый опыт работы на C, Python и еще на нескольких случайных языках, но :) – flexcookie

ответ

10

Scope вопросы. Вы ограничили область вашего набора конструктором. Сделайте его членом экземпляра. Тогда вы можете вернуть его.

Set<classB> setElements = new HashSet<classB>(); 
public classA(classB x, class B y) { 
     setElements.add(x); 
     setElements.add(y); 
+0

Отлично, это именно то, что я делал неправильно. Спасибо вам за помощь! Я приму это как ответ как можно скорее. – flexcookie

+0

Счастливое кодирование. Отметьте это как ответ, если вы сочтете это полезным. –

Смежные вопросы