Сомневайся treeMap в Java

Я нравился бы себе знать, если, когда я делаю список treemap объектов Producto у которого есть побочные продукты в наследстве тип:

ProductoA
ProductoB

Он смог бы показывать только ProductoA?

Такой он, как я верю в это:

public Cataleg(){
    super();
    this.map_catalogo= new TreeMap<String,Producto>();
}

Сделав метод, где они добавляют меня, продукты уже были A или B, я могу показать все я схватил:

public void mostrarProductos(){
    System.out.println("Productos disponibles en almacen: ");
    for(Producto p : map_catalogo.values()) {
        System.out.println(p);
    }
}

Я хотел бы узнать способ о, который он только появился ProductosA (что является субклассом Producto).

3
задан 11.01.2017, 18:19
0 ответов

В java оператор instanceof который он определяет, если объект - инстанция класса в частности.

В твоем случае ты был бы должен использовать это так:

public void mostrarProductos(){
    System.out.println("Productos disponibles en almacen: ");
    for(Producto p : map_catalogo.values()) {
      if( p instanceof ProductoA) {
        System.out.println(p.toString());
      }
    }
}    

Если класс продукта p он ProductoA возврати true и если нет false

Заметь: не, если ты этому препятствовал из-за того, что не был значимым в твой вопрос но объект p у него должен бы быть метод toString() что показал информацию о Продукте. Очень хороший ответ объясняет, что он происходит, если ты не создаешь твоих собственных toString() и ты используешь назначенный по умолчанию Объекта

2
ответ дан 03.12.2019, 17:45
  • 1
    Большое спасибо, уже оно я функционирует совершенно :) –  11.01.2017, 18:10
  • 2
    Привет loisb. хороший ответ. Только я упоминаю тебе о том, что ссылка, которая pusistes для instanceof состоит для WebLogic, в том, что это что-то различное. –  11.01.2017, 18:23
  • 3
    @sstan дикарка спасибо! ни я pispé. Хотя правда я molestó который помещая " instanceOf java" в google не выходите документация достигает –  11.01.2017, 18:24
  • 4
    я не смог находить ее также :) –  11.01.2017, 18:25
  • 5
    @sstan (и lois6b поэтому) aquí documentació n, проверять часть Те Типе Компарисон Оператор instanceof –  11.01.2017, 18:32