Browse Source

Pearl in work

master
esoe 2 years ago
parent
commit
fd7001c50d
  1. 17
      chain/src/main/java/ru/molokoin/App.java
  2. 39
      chain/src/main/java/ru/molokoin/Pearl.java
  3. BIN
      chain/target/classes/ru/molokoin/App.class
  4. BIN
      chain/target/classes/ru/molokoin/Pearl.class

17
chain/src/main/java/ru/molokoin/App.java

@ -6,6 +6,21 @@ public class App {
int[] i = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int[] i = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
//Хранилище //Хранилище
Pearl treasury; Pearl treasury = new Pearl();
treasury.add(i[0]);
treasury.add(i[1]);
treasury.add(i[2]);
treasury.add(i[3]);
treasury.add(i[4]);
treasury.add(i[5]);
treasury.add(i[6]);
treasury.add(i[7]);
treasury.add(i[8]);
treasury.add(i[9]);
//печать из хранилища
treasury.print();
System.out.print("Последний элемент списка: ");
treasury.getLast().print();
} }
} }

39
chain/src/main/java/ru/molokoin/Pearl.java

@ -9,16 +9,49 @@ package ru.molokoin;
*/ */
public class Pearl { public class Pearl {
private Object gem; private Object gem;
private Pearl next = null; private Pearl next;
public Pearl(){
this(null, null);
}
public Pearl(Object gem){ public Pearl(Object gem){
this(gem, null);
}
public Pearl(Object gem, Pearl next){
setGem(gem); setGem(gem);
setNext(next);
} }
/**
* Рекурсивно печатает данные, пока не упрется в next = null
*/
public void print(){ public void print(){
System.out.println((int)gem); System.out.println(gem);
if (next != null){
getNext().print();
}
} }
/**
* перебирает жемчужины до конца, последней присваивет в next новую жемчужину
* @param gem
*/
public void add(Object gem){ public void add(Object gem){
next.setGem(gem); if(this.gem == null){setGem(gem);}
else {
Pearl pearl = new Pearl(gem);
Pearl current = this;
while (current.next != null){
current = current.next;
}
current.next = pearl;
}
}
public Pearl getLast(){
Pearl current = this;
while (current.next != null){
current = current.next;
}
return current;
} }
/** /**
* @param gem the gem to set * @param gem the gem to set

BIN
chain/target/classes/ru/molokoin/App.class

Binary file not shown.

BIN
chain/target/classes/ru/molokoin/Pearl.class

Binary file not shown.
Loading…
Cancel
Save