Java Variable auf unendlich setzen

1 Antwort

"Syntax error on token "else", delete this token" Fehlermeldung beseitigen?

Ich habe ein Bukkit Plugin programmieren Tutorial geguckt und bin auf folgendes Problem gestoßen, als ich das selbst ausprobiert hab:


package com.Akutaplug; 
import org.bukkit.command.Command; 
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
public class Akutaplug extends JavaPlugin {
private static final String ChatColor = null;
private static final String Chatcolor = null;
public void onEnable() {
    // TODO Auto-generated method stub
    super.onEnable();
    
    System.out.println("TESTAUSGABE Akutaplug von Akutasan geladen.");
}

@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
    
    //Falls sender ein Player ist, machen wir den sender zum Player
    Player player = null;
    if(sender instanceof Player) {
        player = (Player) sender;
    }
    
    //Kommandos
        //Kommando "test"
        if(command.getName().equalsIgnoreCase("test"));
            
            if(player == null)
                sender.sendMessage("Glückwunsch! Der Test war erfolgreich!");
        return true;


} else {
    player.setHeatlth (20);
    player.
    player.sendMessage(ChatColor.GREEN + "[Akutaplugin] " + Chatcolor.WHITE +  " Glückwunsch! Der Test war erfolgreich!");
}
}
...zur Frage

Wie sieht die Punktnotation in Java aus oder wie kann ich auf auf andere Klassen zugreifen?

Wie kann ich in der Klasse Telefon die Methoden aus der Klasse Telefonbuch verwenden ? Wenn ich es mit Punktnotation versuche wie z.B.

public void eintrag_hinzufuegen(String name)
{
    Telefonbuch.hinzufuegen(name);
}

, kommt die Fehlermeldung : non static method cannot be referenced from a static context

1)

import java.util.ArrayList;
public class Telefon
{
protected ArrayList <Telefonbuch> telefonbuch;
protected boolean eingeschaltet;
        
        public Telefon()
    {
        // initialise instance variables
        telefonbuch = new ArrayList <Telefonbuch>();
    }
    
    public void anrufen (String name)
    {
    }
    
    public void einschalten()
    {
        eingeschaltet = true;
    }
    
    public void telefonbuch_uebersicht()
    {
        
    }
    
    public void eintrag_hinzufuegen(String name)
    {
    }
    
    public void eintrag_entfernen(String name)
    {
    }
    
    public boolean eintrag_suchen(String name)
    {
    }
}

2)

import java.util.Arrays;

/**
 * Write a description of class Telefonbuch here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
public class Telefonbuch
{
    // instance variables - replace the example below with your own
    private int anzahl_eintrag;
    private int kapazitaet;
    private String[] name_liste;
    protected boolean gefunden;

    /**
     * Constructor for objects of class Telefonbuch
     */
    public Telefonbuch()
    {
        // initialise instance variables
        String [] name_liste = new String[kapazitaet];
        gefunden = false;
    }
    
    public void set_kapazitaet(int x)
    {
        kapazitaet = x;
    }
    
    public void telefonbuch_uebersicht()
    {
        for(int i=0; i < name_liste.length; i++)
        {
        System.out.println(name_liste[i]);
        }
    }
    
    public void hinzufuegen(String name)
    {
        
    }
    
    public void entfernen(String name)
    {
    }
    
    public boolean suchen(String name)
    {
        for(int i=0; i < name_liste.length; i++)
        {
         if(name_liste[i].equals(name))
         {
         gefunden = true;
         }
         else
         {
         //Abbruch
         }
        }
        return gefunden;
    }
}

...zur Frage

Java Adressbuch programmieren

Ich bin Programmieranfänger und habe mir vorgenommen aus Spaß ein (Konsolen-)Adressbuch zu programmieren, aber es funktioniert nicht...

Man soll mit Befehlen verschiedene Funktionen aufrufen können (z.B. mit NEWCONTACT einen neuen Kontakt mit Name anlegen und am Ende der Sitzung mit SAVE alle eingegebenen Daten in eine .txt speichern und in einer neuen Sitzung mit SHOW die txt anzeigen lassen.

Code: package Adresses;

import java.io.*;
import java.util.*;

public class Entries 
{
    public static ArrayList<String> newContact()
    {
        ArrayList<String> contactList = new ArrayList<String>();
        System.out.println("Name: ");
        String add = new Scanner (System.in).nextLine(); 
        contactList.add(add);
        
        return contactList;
    }
    public static void save(ArrayList<String> saveList)
    {
        try (PrintWriter writer = new PrintWriter("addresses.txt"))
        {
            for(String address : saveList)
            {
                writer.write(address);
                writer.append(System.getProperty("line.seperator"));
            }
        }
        catch (IOException e) 
        { 
            e.printStackTrace(); 
        } 
   }

}


package Adresses;

import java.io.*;

public class Read 
{
    public static void read()
    {
        Reader reader = null;
        try
        {
            reader = new FileReader( "addresses.txt" );

                for ( int c; ( c = reader.read() ) != -1; )
                System.out.print( (char) c );
        }
        catch ( IOException e ) 
        {
          System.err.println( "Fehler beim Lesen der Datei!" );
        }
        finally 
        {
            try { reader.close(); } catch ( Exception e ) { e.printStackTrace(); }
        }
    }
}


package Adresses;

import java.util.*;

public class Main
{
    static ArrayList<String> al = new ArrayList<String>();
    static String helpShow = "SHOW Zeigt Kontakte in einer Liste an";
    static String helpSave = "SAVE Speichert alle eingegebenen Daten";
    static String helpNewContact = "NEWCONTACT Erstellt einen neuen Kontakt im Adressbuch";
    
    public static void main(String[] args) 
    {
        while (true)
        {
        boolean isQualifiedCommand = false;
        System.out.println( "Befehl eingeben: ");
        String s = new java.util.Scanner(System.in).nextLine();
        
            if(s.equalsIgnoreCase("newContact"))
            {
                al = Entries.newContact();
                isQualifiedCommand = true;
            }
            

Am Ende der Main Klasse stehen noch weitere if-Anweisungen.

Frage: Wie geht's richtig?

...zur Frage

Was möchtest Du wissen?