# array drehen



## babuschka (11. Apr 2005)

weiß vielleicht jemand eine kürzere schreibweise zu diesem programm?


```
public class h2u2 {
    public static void drehen(int[] b) {
        int erste = 0;
        int letzte =b.length-1;
        while (erste <letzte) {
            int temp = b[letzte];
            b[letzte]=b[erste];
            b[erste] = temp;
            erste++;
            letzte--;
        }
        System.out.println("\nDrehen (a) = ");
        for (int i=0; i<b.length;i++) {
            System.out.print(b[i]+" ");
        }
    }
    public static void main(String[] args) {
        int[] a = {2, 4, 6, 7, 8, 9, 10, 11, 23, 99};
        drehen(a);
    }
}
```

Edit Illu: Codetags :!:


----------



## Roar (11. Apr 2005)

http://java.sun.com/j2se/1.5.0/docs/api/java/util/Collections.html#reverse(java.util.List)


----------



## babuschka (12. Apr 2005)

gibts auch andere ideen.
bin noch neu auf der materie, ich check das halt net so schnell. codes wären mir hilfreicher


----------



## bygones (12. Apr 2005)

nicht viele - Roars methode ist halt die elegante, obwohl du dafür eine List brauchst und die müsstest du erst mal erstellen....

dein code ein bisschen umstrukturiert:

```
int[] a = {1, 2, 3, 4, 5};
		int index = 0;
		int tmp;
		int length = a.length;
		while (index < length / 2) {
			tmp = a[ index ];
			a[ index ] = a[ length - 1 - index ];
			a[ length - 1 - index ] = tmp;
			index++;
		}
		for ( int aa : a ) {
			System.out.println( aa );
		}
```


----------



## meez (12. Apr 2005)

So:


```
public Object[] drehen(Object[] array) {
		Object[] newarray = new Object[array.length];
		for (int n=newarray.length - 1;n>-1;n--) {
			newarray[(n + 1 - newarray.length) * -1] = array[n];
		} 
		return newarray;
	}
```


Ist natürlich noch verbesserungswürdig, was die Performance angeht...


----------



## babuschka (12. Apr 2005)

wer von euch lebt in wien und hat lust mir nachhilfe zu geben


----------



## thE_29 (12. Apr 2005)

```
int b[] = {9,8,7,6,5,4,3,2,1};
    int c[] = new int[b.length];
    //in ein neues speichern
    for(int x = 0; x != b.length; x++)
      c[ x ] = b [ b.length - x - 1];
```

Komme zwar aus Österreich, aber net aus Wien


----------



## babuschka (12. Apr 2005)

schod i hab nämlich a großes problem. hab am 07.05 prüfung und check so ca gar nix in java


----------



## stev.glasow (12. Apr 2005)

Gibt es Wien keine Kurse? (oder Bücher :bae: kleiner Spass nicht persöhnlich nehmen) oder ist dir so'n Kurs zu teuer?


----------



## babuschka (12. Apr 2005)

was für kurse denn. ich geh in die vorlesung, die haben im crash kurs von 0 - 100 alles durchgenommen was in dem buch sprechen sie java steht. ich arbeite nebenbei voll und bin dann halt nicht mehr wirklich mitgekommen weil ich nicht alles nachgelesen habe usw usw usw :-D welches buch ist das geeigneste fürs selbstudium?


----------



## babuschka (12. Apr 2005)

java macht schöner und erhöht die lebenserwartung?????? hahahahaha der war gut ;-) mir macht java graue zellen *gg*


----------



## stev.glasow (12. Apr 2005)

Java Anfaenger hat gesagt.:
			
		

> java macht schöner und erhöht die lebenserwartung?????? hahahahaha der war gut ;-) mir macht java graue zellen *gg*


Jo, manchmal muss du da auch sein Gehirn benutzen   

Bezüglich der Bücher: http://www.java-forum.org/de/viewtopic.php?t=245 aber Vorsicht die sind nicht zum ausmalen


----------

