SHARE
TWEET

Untitled

a guest Oct 12th, 2016 78 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package com.javarush.test.level17.lesson10.home01;
  2.  
  3. import java.util.*;
  4.  
  5. /* Общий список
  6. 1. Изменить класс Solution так, чтобы он стал списком. (Необходимо реализовать интерфейс java.util.List).
  7. 2. Список Solution должен работать только с целыми числами Long.
  8. 3. Воспользуйтесь полем original.
  9. 4. Список будет использоваться нитями, поэтому позаботьтесь, чтобы все методы были синхронизированы.
  10. */
  11.  
  12. public class Solution implements List<Long>{
  13.     private ArrayList<Long> original = new ArrayList<Long>();
  14.  
  15.     @Override
  16.     public synchronized int size()
  17.     {
  18.         return original.size();
  19.     }
  20.  
  21.     @Override
  22.     public  synchronized boolean isEmpty()
  23.     {
  24.         return original.isEmpty();
  25.     }
  26.  
  27.     @Override
  28.     public  synchronized boolean contains(Object o)
  29.     {
  30.         return original.contains(o);
  31.     }
  32.  
  33.     @Override
  34.     public  synchronized Iterator<Long> iterator()
  35.     {
  36.         return original.iterator();
  37.     }
  38.  
  39.     @Override
  40.     public synchronized  Object[] toArray()
  41.     {
  42.         return original.toArray();
  43.     }
  44.  
  45.     @Override
  46.     public synchronized  <T> T[] toArray(T[] a)
  47.     {
  48.         return (T[]) original.toArray();
  49.     }
  50.  
  51.     @Override
  52.     public synchronized  boolean add(Long aLong)
  53.     {
  54.         return original.add(aLong);
  55.     }
  56.  
  57.     @Override
  58.     public synchronized boolean remove(Object o)
  59.     {
  60.         return original.remove(o);
  61.     }
  62.  
  63.     @Override
  64.     public synchronized boolean containsAll(Collection<?> c)
  65.     {
  66.         return original.containsAll(c);
  67.     }
  68.  
  69.     @Override
  70.     public synchronized boolean addAll(Collection<? extends Long> c)
  71.     {
  72.         return original.addAll(c);
  73.     }
  74.  
  75.     @Override
  76.     public synchronized boolean addAll(int index, Collection<? extends Long> c)
  77.     {
  78.         return original.addAll(index, c);
  79.     }
  80.  
  81.     @Override
  82.     public synchronized boolean removeAll(Collection<?> c)
  83.     {
  84.         return original.removeAll(c);
  85.     }
  86.  
  87.     @Override
  88.     public  synchronized boolean retainAll(Collection<?> c)
  89.     {
  90.         return original.retainAll(c);
  91.     }
  92.  
  93.     @Override
  94.     public  synchronized void clear()
  95.     {
  96.         original.clear();
  97.     }
  98.  
  99.     @Override
  100.     public synchronized  Long get(int index)
  101.     {
  102.         return original.get(index);
  103.     }
  104.  
  105.     @Override
  106.     public synchronized  Long set(int index, Long element)
  107.     {
  108.         return original.set(index, element);
  109.     }
  110.  
  111.     @Override
  112.     public  synchronized void add(int index, Long element)
  113.     {
  114.         original.add(index, element);
  115.     }
  116.  
  117.     @Override
  118.     public synchronized  Long remove(int index)
  119.     {
  120.         return original.remove(index);
  121.     }
  122.  
  123.     @Override
  124.     public synchronized  int indexOf(Object o)
  125.     {
  126.         return original.indexOf(o);
  127.     }
  128.  
  129.     @Override
  130.     public synchronized  int lastIndexOf(Object o)
  131.     {
  132.         return original.lastIndexOf(o);
  133.     }
  134.  
  135.     @Override
  136.     public  synchronized ListIterator<Long> listIterator()
  137.     {
  138.         return original.listIterator();
  139.     }
  140.  
  141.     @Override
  142.     public synchronized  ListIterator<Long> listIterator(int index)
  143.     {
  144.         return original.listIterator(index);
  145.     }
  146.  
  147.     @Override
  148.     public synchronized  List<Long> subList(int fromIndex, int toIndex)
  149.     {
  150.         return original.subList(fromIndex, toIndex);
  151.     }
  152. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top