Wie kann man in Java eine Liste sortieren? bei mir funktioniert das nicht so wie ich will mein Code ist unten in der Beschreibung?

1 Antwort

Mit welchem Sortieralgorithmus willste überhaupt vorgehen? Haste da einen vorgegeben oder kannste einen eigenen nutzen? Und ist das der vollständige Quellcode (wo kommt z.B. "categories" [Zeile 4] her)?

Achja: Haste Comparator in Category implementiert? Dann sollteste eig. einfach mit Collections.sort() arbeiten können.

https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html

https://docs.oracle.com/javase/6/docs/api/java/util/Collections.html

0
@Etter

Ich will es aber nach dem eingEtagen dort Tank sortieren

0
@lgplay

eingEtagen? Tank sortieren?

Sorry aber irgendwie habe ich gerade keine Ahnung was du vorhast >_>

Willst du selber einen Sortieralgorithmus implementieren? Meinste mit "Tank" den Integerwert den du beim erzeugen einer Category angibst?

Du kannst bei Implementierung des Comparable-Interfaces mittels der Methode "compareTo()" selbst angeben wonach sortiert werden kann.

0

Ich will ein English Lern Programm Schreiben in unserem Buch gibt es Units die dann wieder in verschieden Categorys unterteilt sind und die sind wenn ich sie aus der Datei ausless ungeordnet deshalb habe ich einen sortrank hinzugefügt und die Category mit dem kleinsten sortrank soll als erstes in der liste stehen und die category mit dem größten sortrank als letztes der sortrank wird aus einer datei ausgelesen das ist aber alles schon fertig es geht nur um das sortieren

0
@lgplay

Joa dann füg doch deinem Category-Objekt das Comparable-Interface zu.

Schreib dann noch die Methode compareTo() dazu und du solltest es mit dem normalen Collection.sort() sortieren können (hat zumindest bei mir so gefunzt).

public class Category implements Comparable<Category>{
...
@Override
public int compareTo(Category other){
return sortrank-other.getSortrank();
}
}
0
@Etter

Wie kann ich das jetzt sortieren da kommt

0

Wie programmiere ich ein unnick?

public class CommandNick implements Listener, CommandExecutor{


private Field nameField;
static String prefix = "";
boolean Premium = false;
boolean Vip = false;
boolean Ultra = false;
private Main plugin;


public CommandNick(Main main){
    this.plugin = main;
}

@Override
public boolean onCommand(CommandSender s, Command cmd, String label, String[] args){
    nameField = getField(GameProfile.class, "name");
    Field altName = getField(GameProfile.class, "name");
        if(s instanceof Player)
        {
            Player p = (Player) s;
            CraftPlayer cp = (CraftPlayer)p;
            if(args.length == 0){
                p.sendMessage("/nick &lt;name&gt; &lt;rank&gt;");
            }else if(args.length == 1 || args.length == 2){
                MySqlNick.nick(p.getUniqueId(), args[0]);
                PermissionUser user = PermissionsEx.getUser(p);
                String[] permissions = user.getGroupsNames();
                String name = args[0];
                if(args.length == 2){
                    String Rank = args[1];
                    if(p.hasPermission("nick.owner")){
                        Premium = true;
                        Vip = true;
                        Ultra = true;
                    }else if(p.hasPermission("nick.ultra")){
                        Premium = true;
                        Vip = true;
                        Ultra = true;
                    }else if(p.hasPermission("nick.vip")){
                        Premium = true;
                        Vip = true;
                    }else if(p.hasPermission("nick.premium")){
                        Premium = true;
                    }
                    
                
                
                
                    if(Rank.equalsIgnoreCase("Premium") &amp;&amp; Premium == true){
                        prefix = "§ePremium: ";
                    }else if(Rank.equalsIgnoreCase("Vip") &amp;&amp; Vip == true){
                        prefix = "§5VIP: ";
                    }else if(Rank.equalsIgnoreCase("Ultra") &amp;&amp; Ultra == true){
                        prefix = "§1Ultra: ";
                    }else{&nbsp;
                        prefix = "Spieler: ";
                    }
                }else{
                    prefix = "Spieler: ";
                }
                try {
                    nameField.set(cp.getProfile(), prefix + ""+name);
                } catch (IllegalArgumentException | IllegalAccessException e) {
                    e.printStackTrace();
                }
                
                PacketPlayOutEntityDestroy destroy = new PacketPlayOutEntityDestroy(cp.getEntityId());
                sendPacket(destroy);
                removeFromeTab(cp);
                
                new BukkitRunnable() {
                    
                    @Override
                    public void run() {
                        addToTab(cp);
                        PacketPlayOutNamedEntitySpawn spawn = new PacketPlayOutNamedEntitySpawn(cp.getHandle());
                        for(Player pl : Bukkit.getOnlinePlayers()){
                            if(!pl.equals(p)){
                                ((CraftPlayer)pl).getHandle().playerConnection.sendPacket(spawn);
                            }
                        }
                    }
                }.runTaskLater(this.plugin, 5);
                p.sendMessage(Main.prefix + "Du bist nun als " + MySqlNick.getNickname(p.getUniqueId()) + " mit dem Prefix " + prefix);
            }
        }
    
    return false;
}
public static void removeFromeTab(CraftPlayer cp){
    PacketPlayOutPlayerInfo packet = new PacketPlayOutPlayerInfo(EnumPlayerInfoAction.REMOVE_PLAYER, cp.getHandle());
    sendPacket(packet);
    }
public static void addToTab(CraftPlayer cp){
    PacketPlayOutPlayerInfo packet = new PacketPlayOutPlayerInfo(EnumPlayerInfoAction.ADD_PLAYER, cp.getHandle());
    sendPacket(packet);
    }
public static void sendPacket(Packet packet){
    for(Player all : Bukkit.getOnlinePlayers()){
        ((CraftPlayer)all).getHandle().playerConnection.sendPacket(packet);
    }
}

public static Field getField(Class clazz, String name){
    try {
        Field field = clazz.getDeclaredField(name);
        field.setAccessible(true);
        return field;
    } catch (NoSuchFieldException | SecurityException e) {
        return null;
    }&nbsp;
        

}

}

Mein Nick Plugin

...zur Frage

Java frage zu boolean?

public static void main (string [] args){ System.out.println(welcheKleidung(false));}

public static String welcheKleidung (boolean esRegnet){ if (esRegnet){ return "regenjacken"} else { return "winterjacke"}

woher soll man hier nun wissen was raus kommt? es wurde ja nicht definiert , was false und was true ist?

...zur Frage

Java Primzahlen Programm

Hey Leute, ich habe mal wieder eine Java-Aufgabe, bei welcher ich den Fehler nicht finde. Ich hoffe ihr könnt mir irgendwie weiterhelfen.

public class PrimeNumbers {

static int x = 1000;
private static boolean[] Primes = new boolean[x];

// Hier ist der "statische Konstruktor"
static {
}

private static boolean checkPrime(int number) {

    return false;
}

public static boolean isPrime(int number) {
    int limit=1000;
    int zahl;      
    int zaehler;   
    boolean primzahl; 

    for (zahl = 2; zahl <= limit; zahl++) {
        primzahl = true;

        for (zaehler = 2; zaehler <= zahl/2; zaehler++) {
            if (zahl % zaehler == 0) {
                primzahl = false;
              break;
            }

        }

        if (primzahl) {
            return true;
        }
    }
    return false;
}

Die Primzahlen, welche zu überprüfen sind werden in einer anderen Methode übergeben und abefragt. Ich habe hier das Problem, dass er mir entweder immer true oder immer false returned, egal ob es nun eine Primzahl ist oder nicht. Ich komme einfach nicht weiter, egal wie ich es drehe und wende. Ich hoffe ihr könnt mir weiterhelfen.

Grüße Dubsepp

...zur Frage

Implementieren einer Methode namens titelVorhanden?

Guten Abend zusammen,

ich arbeite jetzt schon seit 3 Tagen an diesem Problem und ich bekomme es einfach irgendwie nicht gelöst.

Die Aufgabe sagt, dass ich eine Methode boolean titelVorhanden (String pTitel, String pInterpret) der Klasse Musikverwaltungsprogramm, die true zurück gibt, wenn der Song in der Liste vorkommt, zurück gibt.

Meine Überlegung ist/war diese:

public class Musikverwaltungsprogramm {

 public boolean titelVorhanden (String pTitel, String pInterpret) {

   List<Musiktitel> liste2 = new List<Musiktitel>(); 

   boolean titelVorhanden = false;

   liste.toFirst();

   while (liste.hasAccess() && gefunden == false) {

     if (liste.getContent() == String pTitel && String pInterpret) {

       titelVorhanden = true;

     } // end of if

     liste.next();

 } // end of while

 } // End of titelVorhanden

   public static void main (String [] args) {

   titelVorhanden();

   }

 } // End of Class

...zur Frage

$_SESSION, session_unset(), session_destroy()?

<?php
function sessiondest(){
if(session_unset()){
  if(session_destroy()){
    if(isset($_SESSION['login']) && $_SESSION['login'] === true){
      return false;
    }else {
      return true;
    }
  }else {
    return false;
  }
}else {
  return false;
}
}
?>

Kann mir jemand erklären warum dieser Code nicht funktioniert?

...zur Frage

Bukkit Programmierung Buch mit Meta

Hallo ich habe hier einen kleinen Code , der leider nicht funktioniert , denn wenn ich /info eingebe schreibt der Server mir nur . hier der code

public class buch implements Listener {

public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
    if(cmd.getName().equalsIgnoreCase("info")) {
        Player p = (Player) sender;     

        ItemStack mybook = new ItemStack(Material.WRITTEN_BOOK);
        BookMeta bookmeta = (BookMeta) mybook.getItemMeta();
       
        bookmeta.setTitle("Infos Über WorldGuard-/Edit");
     
        mybook.setItemMeta(bookmeta);
       
        p.getInventory().addItem (mybook);



    return true;
    } return false;
    
}

}

...zur Frage

Was möchtest Du wissen?