update java example

This commit is contained in:
krakjoe 2013-11-29 01:48:21 +00:00
parent 8a63a99d2e
commit 734fe5508a
6 changed files with 427 additions and 124 deletions

View file

@ -0,0 +1,47 @@
import java.util.ArrayList;
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
/**
* Implement a simple history list for command input
* @author krakjoe
*/
public class History extends ArrayList<String> {
private Integer position = new Integer(0);
public History() {
super();
}
@Override public boolean add(String text) {
String last = last();
if (text != null) {
if (last == null || !last.equals(text)) {
if (super.add(text)) {
position = size();
return true;
}
}
}
return false;
}
public String last() {
if (position >= 1) {
position--;
return get(position);
} else return new String();
}
public String next() {
if (position+1 < size()) {
position++;
return get(position);
} else return new String();
}
}