Just nu i M3-nätverket
Gå till innehåll

Sortering o interface!


javanybörjare

Rekommendera Poster

javanybörjare

Hej,

 

Jag ska sortera i stigande ordning personerna som kan vara en blandning av Human och Fysiker!

 

Jag vill att gruppen Humman sorteras för sig och Fysiker för sig! Men sortering sker lite huller om buller!

 

Kan någon hjälpa mig o reda ut problemet vore jätte snällt.

 

häls

/javanybörjare

 

 

import java.util.Arrays;
import java.util.Collections;

public class Main {

 public static void main(String[] args) {
  //nytt objekt
  
  Human person1 = new Human();
  Human person2 = new Human();
  
  
  //E4.5

 

  System.out.println("E4.5 - Nu skriver vi ut 5 slumpmässiga human och 5 fysiker!");

 

  Human[] personArray = new Human[10];
  for (int i = 0; i <= 4; i++){
   personArray = new Human();
  }
  for(int i = 5; i < 10; i++){
   personArray = new Fysiker();
  }
  
  System.out.println("Comparto returnerar " + person1.compareTo(person2));
       
  //STIGANDE ordning
        Arrays.sort(personArray);
  
         // FALLANDE ornding
//        Arrays.sort(personArray, Collections.reverseOrder());

       
//  här skriver vi ut personerna!
  for(int i = 0; i < personArray.length; i++){
//   System.out.println("testar personarr");
   System.out.println(personArray);
  }
  
 }
  
}

 

Kör jag ramprogrammet kan jag t ex få enligt nedan svar:

 

E4.5 - Nu skriver vi ut 5 slumpmässiga human och 5 fysiker!

Comparto returnerar 5

My name is Frida, I live in Stockholm and am 16 år

My name is Fredrik, I live in Göteborg and am 18 år

My name is Sara, I live in Malmö and am 20 år

My name is Sara, I live in Göteborg and am 49 år. Jag började teknisk fysik 1980

My name is Frida, I live in Stockholm and am 55 år

My name is Fredrik, I live in Göteborg and am 66 år. Jag började teknisk fysik 1963

My name is Frida, I live in Stockholm and am 73 år

My name is Sara, I live in Göteborg and am 75 år. Jag började teknisk fysik 1965

My name is Fredrik, I live in Göteborg and am 77 år. Jag började teknisk fysik 1999

My name is Fredrik, I live in Malmö and am 83 år. Jag började teknisk fysik 1996

Länk till kommentar
Dela på andra webbplatser

javanybörjare

tack Cecilia för din respons

utav det lilla jag förstår så denna funktion Arrays.sort(personArray);

sorterar åldrarna i stigande ordning dock grupperingarna mellan human o fysiker går in i varandra..

 

Jag skulle vilja dela varje grupp i stigande ordning för sig!

 

Alltså i stället för t ex svaret nedan :

 

E5.1 - Nu skriver vi ut 5 slumpmässiga human och 5 fysiker! Stigande/fallande ordning

My name is Sara, I live in Malmö and am 1 år

My name is Frida, I live in Stockholm and am 39 år

My name is Frida, I live in Malmö and am 50 år

My name is Sara, I live in Göteborg and am 52 år. Jag började teknisk fysik 1977

My name is Fredrik, I live in Stockholm and am 72 år

My name is Fredrik, I live in Malmö and am 78 år. Jag började teknisk fysik 1951

My name is Fredrik, I live in Göteborg and am 86 år. Jag började teknisk fysik 1943

My name is Sara, I live in Göteborg and am 87 år

My name is Frida, I live in Malmö and am 87 år. Jag började teknisk fysik 2009

My name is Sara, I live in Malmö and am 97 år. Jag började teknisk fysik 2007

 

Vill jag få :

 

E5.1 - Nu skriver vi ut 5 slumpmässiga human och 5 fysiker! Stigande/fallande ordning

My name is Sara, I live in Malmö and am 1 år

My name is Frida, I live in Stockholm and am 39 år

My name is Frida, I live in Malmö and am 50 år

My name is Fredrik, I live in Stockholm and am 72 år

My name is Sara, I live in Göteborg and am 87 år

My name is Sara, I live in Göteborg and am 52 år. Jag började teknisk fysik 1977

My name is Fredrik, I live in Malmö and am 78 år. Jag började teknisk fysik 1951

My name is Fredrik, I live in Göteborg and am 86 år. Jag började teknisk fysik 1943

My name is Frida, I live in Malmö and am 87 år. Jag började teknisk fysik 2009

My name is Sara, I live in Malmö and am 97 år. Jag började teknisk fysik 2007

 

 

 

Länk till kommentar
Dela på andra webbplatser

Det var så lite så :)

 

Kan du tänka dig att ha olika arrayer för fysiker och andra?

Eller går det att ha parametrar (argument) till Arrays.sort som anger mellan vilka index den ska sortera?

Länk till kommentar
Dela på andra webbplatser

javanybörjare

Det var så lite så :)

 

Kan du tänka dig att ha olika arrayer för fysiker och andra?

Eller går det att ha parametrar (argument) till Arrays.sort som anger mellan vilka index den ska sortera?

 

tack igen.

Det hade jag inte tänkt på faktiskt. Ska försöka klura ut hur jag kan särskilja mellan human Array o fysiker arrayen .. o då kanske som du säger kan jag få som jag vill  :-)

jag är riktigt nybörjare o försöker lära mig på egen hand m h a både en massa länkar som finns för att lära sig från grunden o sajter som denna som man kan ställa frågor o få hjälp av cyber vännerna! :)

Länk till kommentar
Dela på andra webbplatser

Bara trevligt att försöka hjälpa till :) men det är 10 år sen jag programmerade något i Java och det var inte mycket då heller.

 

Det här skapar ju en array:

Human[] personArray = new Human[10];

 

Om du vill ha två får du skapa två arrayer med olika namn.

 

Den här nedladdningsbara Java-boken är visserligen gammal men den är mycket pedagogisk:

Thinking in Java http://www.mindviewinc.com/Books/downloads.html

Länk till kommentar
Dela på andra webbplatser

javanybörjare

Bara trevligt att försöka hjälpa till :) men det är 10 år sen jag programmerade något i Java och det var inte mycket då heller.

 

Det här skapar ju en array:

Human[] personArray = new Human[10];

 

Om du vill ha två får du skapa två arrayer med olika namn.

 

Den här nedladdningsbara Java-boken är visserligen gammal men den är mycket pedagogisk:

Thinking in Java http://www.mindviewinc.com/Books/downloads.html

 

 

Tackar ödmjukt  :-)

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...