Spec-Zone .ru
спецификации, руководства, описания, API
След: Наборы
Урок: Интерфейсы
Вопросы и Упражнения
Домашняя страница > Наборы > Интерфейсы

Вопросы и Упражнения: Интерфейсы

Вопросы

  1. Этот урок упоминает три способа пересечь a List. Опишите их, и отметьте ограничения каждого.
  2. Рассмотрите четыре базовых интерфейса, Set, List, Queue, и Map. Для каждого из следующих четырех присвоений определите, какой из четырех базовых интерфейсов лучше всего подходит, и объясните, как использовать его, чтобы реализовать присвоение.
    • Whimsical Toys Inc (WTI) должна записать имена всех своих сотрудников. Каждый месяц сотрудник будет выбран наугад из этих записей, чтобы получить свободную игрушку.
    • WTI решил, что каждый новый продукт назовут после сотрудника — но только будут использоваться имена, и каждое имя будет использоваться только однажды. Подготовьте список уникальных имен.
    • WTI решает, что только хочет использовать самые популярные имена для своих игрушек. Подсчитайте численность персонала, у кого есть каждое имя.
    • WTI получает абонементы для локальной команды лакросса, чтобы быть совместно использованным сотрудниками. Создайте очередь для этого популярного вида спорта.
  3. Следующая программа, как предполагается, печатает "Синюю" строку. Вместо этого это бросает ошибку. Почему?
    import java.util.*;
    
    public class SortMe {
        public static void main(String args[]) {
            SortedSet<StringBuffer> s = new TreeSet<StringBuffer>();
            s.add(new StringBuffer("Red"));
            s.add(new StringBuffer("White"));
            s.add(new StringBuffer("Blue"));
            System.out.println(s.first());
        }
    }
    

Упражнения

  1. Запишите программу, которая печатает ее параметры в произвольном порядке. Не делайте копию массива параметра.
  2. Возьмите FindDups example и измените это, чтобы использовать a SortedSet вместо a Set. Определите a Comparator так, чтобы регистр игнорировался, сортируя и идентифицируя элементы набора.
  3. Запишите метод, который берет a List<String> и применяется String.trim к каждому элементу. Чтобы сделать это, Вы должны будете выбрать одну из трех итеративных идиом, что Вы описали рассматриваемый 1. Два из них не будут давать результат, который Вы хотите, так убедиться, что записали программу, которая демонстрирует, что метод фактически работает!

Проверьте свои ответы.


Проблемы с примерами? Попытайтесь Компилировать и Выполнить Примеры: FAQ.
Жалобы? Поздравление? Предложения? Дайте нам свою обратную связь.

Предыдущая страница: Сводка Интерфейсов
Следующая страница: Реализации