# Kann mir jemand helfen diesen Code zu übersetzen?



## SaskiaSchmitt (22. Jan 2012)

```
public class Queue<Type> implements Iterable<Type>{
	private static final int DEFAULT_SIZE = 7;
	private int writeCursor;
	private int readCursor; 
	private int actualSize;
	private Type[] buffer;
	private int maxSize;
	

	// Konstruktoren

	public Queue() throws IllegalQueueSize {
		this(DEFAULT_SIZE);
	}

	public Queue(int maxSize) throws IllegalQueueSize {
		if (maxSize <= 0)
			throw new IllegalQueueSize();
		this.maxSize = maxSize;
		this.buffer = (Type[]) new Object[maxSize];
		writeCursor = 0;
		readCursor = 0;
		actualSize = 0;
		maxSize = 0;
	}

	// Getter/Setter

	public int getMaxSize() {
		return maxSize;
	}

	public void setMaxSize(int maxSize) {
		this.maxSize = maxSize;
	}

	public int getWriteCursor() {
		return writeCursor;
	}

	public void setWirteCursor(int wirteCursor) {
		this.writeCursor = wirteCursor;
	}

	public int getReadCursor() {
		return readCursor;
	}

	public void setReadCursor(int readCursor) {
		this.readCursor = readCursor;
	}

	public int getActualSize() {
		return actualSize;
	}

	public void setActualSize(int actualSize) {
		this.actualSize = actualSize;
	}

	public Type[] getBuffer() {
		return buffer;
	}

	public void setBuffer(Type[] buffer) {
		this.buffer = buffer;
	}

	public static int getDefaultSize() {
		return DEFAULT_SIZE;
	}
	

	// --------------------METHODEN--------------------------------------//

	public boolean isQueueFull() {
		if (actualSize == maxSize) {
			return true;
		} else {
			return false;
		}
	}

	public boolean isQueueEmpty() {
		if (actualSize == 0) {
			return true;
		} else {
			return false;
		}
	}

	public int actualSize() throws QueueIsEmpty {
		if (isQueueEmpty() == true)
			throw new QueueIsEmpty();

		if (actualSize > maxSize) {
			actualSize = maxSize;
			return actualSize;
		}
		return actualSize;
	}


	public Type readValue(int index) throws QueueIsEmpty, IllegalIndex {
		if (isQueueEmpty() == true)
			throw new QueueIsEmpty();

		if (index > buffer.length) {
			throw new IllegalIndex();
		} else {
			return buffer[index];
		}

	}

	public void insert(Type value) {
		if (actualSize == buffer.length) {
			System.out.println("Overflow");
		}
		buffer[writeCursor] = value;
		writeCursor = (writeCursor + 1) % buffer.length; 
		actualSize++;
	}

	public Type removeLastElement() throws QueueIsEmpty {
		if (isQueueEmpty() == true)
			throw new QueueIsEmpty();
		Type value = buffer[0];
		buffer[0] = null;
		actualSize--;
		return value;
	}

	public void removeAll() {
		for (int i = 0; i < buffer.length; i++)
			buffer[i] = null;
		actualSize = 0;
	}

	public String toString() {
		String string = "";

		for (int i = 0; i < buffer.length; i++)
			string += "-" + buffer[i] + "-";
		return string;
	}

	@Override
	public Iterator<Type> iterator() {
		return null;
		
	}


}
```


----------



## diggaa1984 (22. Jan 2012)

definiere übersetzen, was verstehst du nicht? Die Methodennamen sind englisch aber das kann man zur Not mit nem Programm rausfinden was das heissen soll, und dann sind sie fast schon selbst-erklärend.

Was genau soll erklärt werden, ist ein wenig viel!


----------



## XHelp (22. Jan 2012)

"Size" heißt "Größe"
"write" heißt "schreiben"
Den Rest kannst du auch bei google-translate nachgucken.

Mal im ernst: eine vernünftige und konkrete Frage sollte man schon schreiben.


----------



## SaskiaSchmitt (22. Jan 2012)

Also ich meine Zeile für Zeile, versteh diesen Code einfach nicht, sitze den ganzen tag dran! Wäre echt super!

Also Bitte!


----------



## hartzie (22. Jan 2012)

Ui das klingt ja eher nach einem Jobangebot für einen sehr gelduldigen Lehrer...
Also falls du Interesse hast melde dich


----------



## GUI-Programmer (22. Jan 2012)

Schon mal was davon gehört?


> Hausaufgaben - Wir machen keine Hausaufgaben, aber wir helfen dabei



Ähnliches lässt sich auch hier forumlieren:
Java Grundlagen - Wir erklären dir nicht die gesamten Grundlagen, aber wir helfen bei Verständnisprobleme.

Ansonsten: Benutz Google. (Beispiel Google Suchergebnisse für: java implements)


----------



## Firephoenix (22. Jan 2012)

Und Zeile für Zeile Code zu dokumentieren ist auch Unfug,
der Großteil besteht aus einfachen Attributen, simplen Konstrukten wie Schleifen etc. und wenn man nicht weiß was getter/setter sind hilft Google.
Wenn dann in komplexeren Methoden noch Fragen sind kann man die gezielt stellen, aber einfach mal 150 Zeilen Code reingeklatscht nach dem Motto "dokumentiert mal sauber so durch, dass es ein Anfänger versteht" ist eher was für die Jobbörse 

Gruß


----------



## SaskiaSchmitt2 (22. Jan 2012)

hartzie hat gesagt.:


> Ui das klingt ja eher nach einem Jobangebot für einen sehr gelduldigen Lehrer...
> Also falls du Interesse hast melde dich






So, ich bins nochmal, habe probleme mit meinem account.
Habe dir eine privat NAchricht gesendet, würdest du mir mal bitte zurückschreiben?

Vielen Dank


----------



## Noctarius (23. Jan 2012)

Auch hier gilt trotzdem, bitte beim nächsten Mal einen vernünftigen Titel wählen und etwas mehr als 5 Worte zum Problem.


----------

