Java – die neusten Beiträge

Bin ich zu blöd zum Programmieren ?

Hallo, die frage klingt vielleicht dämlich, aber ich versuche jetzt seit 2 Tagen Programmieren zu lernen. Ich möchte wirklich gerne in meiner Zukunft mit Software arbeiten und bin auch bereit meine Freizeit zum Üben zu "Opfern". Allerdings weiß ich selbst nicht so richtig wie ich anfangen soll, da ich niemanden kenne der mir helfen kann anzufangen habe ich gegoogelt, aber bin fast nur auf Seiten gestoßen die Zahlungspflichtig sind. Ich habe halt keine Ahnung wie ich üben/lernen kann. Ich bräuchte doch zunächst einmal so eine art Terminal, wo ich den Code reinschreiben könnte oder? Dann müsste ich mir eine Programmiersprache aussuchen, hier fände ich Java Script ganz interessant, aber C ++ wäre vermutlich besser, da meines Wissens nach, viele Firmen mit dieser Sprache arbeiten. Stimmt das? Und ist C + + schwer? Habe jetzt schon ein bisschen auf Internetseiten Rumprobiert, mit Java Script, und habe die Variablen auch nach 2/3 Stunden Coden nicht wirklich verstanden.Bin ich zu dumm oder geht das mehreren so? Man kann ja z.B. function name() {und so weiter} machen ,aber was kommt in die runde () Klammer? Wieso bleibt die manchmal frei und manchmal nicht? Und wie beziehe ich mich in Funktionen richtig auf Variablen? Variablen sind doch dafür da, um Zeit zu sparen oder? Weil ich so nur die Variable eintragen muss, anstatt den ganzen Text. Also sagen wir ich habe die Variable let y=x(). Wie beziehe ich mich da in einer Funktion drauf? So? : function x() {return y;} ??? Und woher weiß ich ob ich y in Klammer setzten muss oder Anführungszeichen verwenden muss? Sorry für den langen Text. Danke im vorraus.

Computer, programmieren, Java, JavaScript, Informatik

Programmiersprache Java: Wieso erhalte ich diese Fehlermeldung?

Hallo zusammen

Ich bin gerade wieder fleissig Java am programmieren und komme leider bei einem neuen Problem nicht weiter.

Der Code ist an und für sich schon fertig, nur schein bei der Zeile 17 (gem. Fehlermeldung etwas nicht korrekt zu sein, was ich leider nicht nachvollziehen kann. Kann mir jemand erklären wie das Problem behoben werden kann?

Von der Logik her müsste danach der Code funktionieren.

Aufgabenstellung:

2x Usereingabe -> 1x Min int Minimalwert & 1x Max int Maximalwert

Das Programm soll den ersten Index von int [] werte widergeben, welche das Minimum und Maximum Kriterium kumulativ erfüllt und danach sich beenden ohne weitere Werte anzugeben -> break.

int zähler habe ich als Indexcount verwendet.

Fehlermeldung:

Code an sich:

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

int [] werte = {45, 34, 56, 63, 83, 18, 12, 79, 2, 35, 13, 68, 22, 54, 86, 33};

Scanner keyScan = new Scanner(System.in);

System.out.print("Minimum: ");

int min = keyScan.nextInt();

System.out.print("Maximum: ");

int max = keyScan.nextInt();

keyScan.close();

for (int zähler = 0; zähler<werte.length; zähler++) {

  if (werte [zähler] >= min && werte <= max) {

    System.out.print(werte[zähler]);

    break;}

 }

}

}
----------------------

Für eure Hilfe wäre ich sehr dankbar.

LG

Alex

Bild zum Beitrag
programmieren, Java, Programmiersprache, Fehlermeldung

Tastensteuerung Hamster BlueJ?

Hallo,

ich will ein Labyrinth erstellen und will, dass man sich mit wasd bewegen kann.

import java.awt.Frame;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

public class Tastensteuerung extends Hamster implements KeyListener {
  @Override
  public void keyTyped(KeyEvent e) {
    //System.out.println("The key Typed was: " + e.getKeyChar());
    if ('w' == e.getKeyChar())
      vor();

    if ('a' == e.getKeyChar())
      linksUm();

    if ('d' == e.getKeyChar())
      linksUm(); 

    linksUm();
    linksUm();

    if ('s' == e.getKeyChar())
      linksUm();

    linksUm();
  }

  @Override
  public void keyPressed(KeyEvent e) {
    /*
    if (e.isActionKey())
      System.exit(0);

    System.out.println("The key Pressed was: " + e.getKeyChar());
    */
  }

  @Override
  public void keyReleased(KeyEvent e) {
    /*
    System.out.println("The key Released was: " + e.getKeyChar());
    */
  }

  public static void main (String args[]) {
    XHam Hansi = new XHam();

    // Setting the Frame and Labels
    Frame f = new Frame("Demo");
    //f.setLayout(new FlowLayout());
    //f.setSize(500, 500);
    //Label l = new Label();
    //l.setText("This is a demonstration");
    //f.add(l);
    f.setVisible(true);
    //////Dummy f = new Dummy(); //geht nur mit Frame

    // Creating and adding the key listener
    //KeyListenerExample k = new KeyListenerExample(Hansi);
    f.addKeyListener(Hansi);
  }

  /**
   * Konstruktor f�r Objekte der Klasse Tastensteuerung
   */
  public Tastensteuerung(int reihe, int spalte, int blickrichtung, int anzahlKoerner) {
    super(reihe,spalte,blickrichtung,anzahlKoerner);
  }

  public void zurMauer() {
    while (vornFrei())
      vor();
  }
}

Bei

f.addKeyListener(Hansi);

kommt ein Fehler. Kann mir jemand helfen?

Hamster, programmieren, Java, BlueJ

Mit BlueJ programmieren?

Hallo alle zusammen,

ich sitze gerade schon seit fast anderthalb Stunden an diesen drei Aufgaben und weiß einfach nicht weiter. Kann mir jemand helfen, der mit BlueJ Erfahrung hat?

Vielen Dank im Voraus.

Hier die Aufgaben:

/**Projekt: ReihungMax01_roh
 * Klasse : Reihung
 * @author: thh
 * @version: 13.5.14/2.11.12
 */
public class Reihung {
  // Objektvariablen deklarieren
  int anzahl = 19;
  double[] platz = new double[anzahl]; //Reihung deklarieren; wird 19 Kommazahlen 
  // als Werte erhalten; 
  /** 
   * Konstruktor fuer Objekte der Klasse Reihung */
  public Reihung() {
    // gesamte Reihung initialisieren, indem ... 
    for (int i = 0; i < anzahl; i++) {     // alle Inhalte der Reihung festgelegt werden
      platz[i] = 100 + 200*Math.random(); // <-- 5.
    }
  }
  
  /** die Gesamtzahl der Elemente
   * in der Reihe ausgeben */
  public int gibAnzahl() {
    return anzahl;
  }

  /** ein bestimmtes Element der Reihung ausgeben
   * die Nr. des gewuenschten Elementes angeben */
  public double gibPlatz(int i) {
    if (i < anzahl && i >= 0) { 
      return platz[i]; 
    }
    else { 
      return -888.888; 
    }
  } 
   
  /** Aufgabe 1:
   * setzt fuer zwei Elemente der Reihung platz neue Werte fest.
   * Das Element mit dem Index 5 in Reihung platz[ ] wird auf 555.55 gesetzt
   * Das Element mit Index 9 auf der Wert 99.99  */
   
  /** Aufgabe 1:
   * setzt ein bestimmtes Element der Reihung platz[ ] auf einen
   * neuen vorzugebenden Wert. 
    Schreibe nun für i den Index des Elements, welches verändert werden soll
    und für wert den Wert der eingesetzt werden soll*/
   
  /** Aufgabe 2: 
   * sucht das Maximum in der Reihung platz[ ] 
   * und meldet diesen Wert als Antwort */
   
  /** Aufgabe 3: 
   * sucht den Index, an dem das Maximum in der Reihung platz[ ] steht 
   * und meldet diesen Index */
}

/* 
 * 2. Beschreibe deine Idee in Worten. 
 *  Erstelle den Rumpf dieser Methode, die das Maximum in der Reihung 
 *  platz sucht und als Antwort zurueckgibt. 
 *  Achte auf die Farbunterlegung beim Schreiben neuer Methoden.
 *  Erkennst du im Quelltext die Idee/den Algorithmus wieder?
 * 
 * 3. Entwirf und implementiere eine Methode, die den Index nennt,
 *  an dem das Maximum steht. 
 *  Was ist der Unterschied zu Aufg.2?
 *  
 * 4. ** platz[i] = 100 + 200*Math.random();
 *  Hierdurch werden Zahlen zwischen 100.0 und 299.99999 zufaellig erzeugt.
 *  Welche Werte koennen die Elemente der Reihung annehmen, wenn
 *  Z.18 lautet:   platz[i] = 500*Math.random() + 200 ;  ?
 *  *** Z.18 lautet: platz[i] = 13 + i*Math.random() + 20*i ; ?
 * 5. Kopieren (auf Dateiebene ausserhalb von BlueJ) das gesamte
 *  Projekt-Verzeichnis und gib der Kopie einen neuen Namen wie ReihungMax02.
 *  Oeffne dieses Projekt und arbeite im neuen Projekt weiter. 
 */
Computer, programmieren, Java, BlueJ, Informatik

Java wo liegt der Fehler?

Hallo gutefrage-Community,

ich habe unten gezeigten Quellcode verfasst und dabei keinerlei Fehlermeldungen oder Exceptions erhalten. Am Ende kommt aber irgendwie trotzdem nicht heraus, was herauskommen soll.

Was ich erwarte:

Aus einem JTextField erhält man einen String "input" wie z.B. 2x+5=10x-3. Dieser wird zuerst beim "=" gesplittet. Daraus erhält man ein Array mit zwei Strings: 2x+5 und 10x-3. Diese beiden Arrays sollen nun an allen "+" und "-" gesplittet werden. Deshalb wird eine Schleife zweimal durchlaufen und dabei im ersten Durchlauf der erste und im zweiten Durchlauf der zweite String verarbeitet. Danach wird bei jeder Zahl mit "x" das "x" entfernt und ein boolean auf true gesetzt. Was am Ende herauskommen soll:

Drei Arrays (int num[], boolean isFactorOfVar[] und boolean isOnRightSide[]), die immer dem gleichen Index entsprechen, also: num[0] gehört zu isFactorOfVar[0] und zu isOnRightSide[0], num[1] gehört zu isFactorOfVar[1] und zu isOnRightSide[1] usw. Dabei soll num[] der Zahl entsprechen, isFactorOfVar, ob ein x am Ende entfernt wurde und isOnRightSide[], ob sich diese Zahl auf der rechten Seite des "=" befindet. Hier ist das am Anfangsbeispiel 2x+5=10x-3 gezeigt:

  • num[0] = 2; isFactorOfVar[0] = true; isOnRightSide[0] = true
  • num[1] = 5; isFactorOfVar[1] = false; isOnRightSide[1] = true
  • num[2] = 10; isFactorOfVar[2] = true; isOnRightSide[2] = false
  • num[3] = 3; isFactorOfVar[3] = false; isOnRightSide[3] = false

Was herauskommt:

  • num[0] = 2; isFactorOfVar[0] = true; isOnRightSide[0] = nicht angezeigt
  • Fehlermeldung

Mein Code:

Fehlermeldung:

Bild zum Beitrag
Computer, Technik, programmieren, Java, Informatik, Programmiersprache, Algorithmus

Wie viele Objekte der Klasse User werden insgesamt in Arbeitsspeicher durch main-Methode erzeugt?

Hallo,

bei dieser Fragestellung komme ich nicht weiter. Kann mir jemand sagen, wie man es lösen müsste?

Die Fragestellung lautet:

Wie viele Objekte der Klasse User werden insgesamt in Arbeitsspeicher durch main-Methode erzeugt?

public class User{
       private String name;
       private User[] friends;
       private int numFriends;
      
       public User() {
               friends = new User[100];
       }

       public User(String name) {
               this();
               this.name = name;
       }

       public void addFriend(User u){
               if (numFriends < friends.length){
                   friends[numFriends] = u;
                   ++numFriends;
               }
       }       

       public void addFriend(String name){
               addFriend(new User(name));              
       }

}

-------------------------------------------------------------------

public class Facebook{
  public static void main(String[] args){
       User alex = new User("Alex");
       alex.addFriend(new User("Friedrich"));
       alex.addFriend("Wilhelm");
      
       User lena = new User();
       lena.addFriend("Alex");
 }
}

Die Antwortmöglichkeiten sind:

  • 5
  • 3
  • 2
  • 4

Kann mir bitte jemand helfen?

programmieren, Java

Meistgelesene Beiträge zum Thema Java