Advertisement
Guest User

Untitled

a guest
Dec 5th, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.88 KB | None | 0 0
  1. import java.util.Iterator;
  2. import java.util.Spliterator;
  3. import java.util.function.Consumer;
  4.  
  5. public class Kontener01 implements Iterable{
  6. private Object tab[];
  7. Kontener01(int size){ tab=new Object[size]; }
  8. public Object get(int index){
  9. if (index>=tab.length || index<0)
  10. {
  11. throw new ArrayIndexOutOfBoundsException("index = "+ index);
  12. }
  13. else
  14. {
  15. return tab[index];
  16. }
  17. }
  18. public void set(int index, Object value)
  19. {
  20. if(index<0)
  21. { throw new
  22. ArrayIndexOutOfBoundsException("index = "+index);
  23. }
  24. if (index>=tab.length)
  25. {
  26. resize(index+1);
  27. }
  28. tab[index]=value;
  29. }
  30. protected void resize(int size){
  31. Object newTab[]=new Object[size];
  32. for(int i=0; i<tab.length;i++){ newTab[i]=tab[i];}
  33. tab=newTab; }
  34. public int size(){return tab.length; }
  35.  
  36.  
  37. public static void main(String[] args) {
  38. Kontener01 tab=new Kontener01(2);
  39. tab.set(0,"Zamek");
  40. tab.set(1,2);
  41. tab.set(2,3.324); //metoda set potrafi „zwiekszac” rozmiar tablicy
  42. for(int i=0; i<tab.size(); i++)
  43. {
  44. System.out.println("tab["+i+"] = "+tab.get(i)+" ");
  45. }
  46.  
  47. for(Object o:tab){ System.out.println(o); }
  48. }
  49.  
  50. @Override
  51. public Iterator iterator() {
  52. return new Iterator() {
  53. int position = 0;
  54. @Override
  55. public boolean hasNext() {
  56. return position<tab.length;
  57. }
  58.  
  59. @Override
  60. public Object next() {
  61. return tab[position++];
  62. }
  63. @Override
  64. public void remove()
  65. {
  66. throw new UnsupportedOperationException();
  67. }
  68. };
  69. }
  70.  
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement