Programmieren – die neusten Beiträge

Java Referenzdatentypen?

Mir ist ein bestimmter Aspekt, und zwar der Sinn einer Referenz noch nciht ganz klar geworden:

Primitiver Datentyp:

int zahl = 8;

Hier wird ja mit der Deklarierung der Variable zahl eine Adresse für einen gerade freien Speicherplatz erzeugt und in diesem Speicherort der Wert der Variable, 8, abgelegt.
So wie in meiner Zeichnung:

Referenzdatentyp:

Mensch mensch1 = new Mensch(16); //16 = pAlter

Hier wird auch mit der Variable einem gerade freien Speicherplatz eine Adresse zugeordnet. Dann wird in dem freien Speicherplatz, glaube ich, nichts (kein Variablen Wert (new Mensch(16) ) ) abgelegt, sondern nur eine komplett andere Adresse. Folgt man dieser Adresse und guckt in dem durch sie verwiesenen Speicherplatz nach, findet man da unseren Variablen - Wert = new Mensch(16).
Wie in meiner Zeichnung hier:

Was ich jetzt nicht so richtig verstehe ist, warum wird unser Variablenwert (unser neues menschen - objekt) unter einer anderen Adresse abgelegt, als der, der der Variable "mensch1"eigentlich zugeordnet wurde? Sprich: Wozu eine Referenz auf eine andere Adresse (ich glaube immer Referenz auf eine andere Adresse, vielleicht ist es aber auch in WIrklichkeit eine Referenz auf das neue Menschen Objekt?)? Warum nicht so wie beim primitiven Datentypen machen, also so wie bei meiner Zeichnung hier unten?:

omg, diese logik - aber es macht mir Spaß, zu programmieren und ich möchte alles unbedingt verstehen !😊

Bild zum Beitrag
Software, Schule, IT, programmieren, Java, Informatik, Programmiersprache, Softwareentwicklung

Unity - Object reference not set to an instance of an object?

Hallo, weiß jemand wie ich in Unity diesen NullReferenceException Fehler beheben bzw. fixen kann? Kenne mich noch nicht so richtig mit C# und Unity aus. Daher weiß ich auch nicht, wie ich mit diesen Fehler umgehen kann. Habe in Unity 3D eine Shop Scene gemacht, und habe dann dieses Script für die Buttons und den Shop allgemein gemacht, um Skins kaufen zu können und die Game Coins mit den Buttons zu verbinden. Ich habe ein "Debug.Log" erstellt. Um zu schauen, dass wenn ich auf den Button klicke, in der Konsole dann steht als Beispiel "Button wurde geklickt!" doch stattdessen steht dort immer als Fehler "NullReferenceException: Object reference not set to an instance of an object

ShopManager.Start () (at Assets/Scripts/Best/ShopManager.cs:15)"

Hier ist das Script für den Shop, und die Buttons. (C#):

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;


public class ShopManager : MonoBehaviour
{


    public int kontostand;
    public Text kontostandText;


    // Start is called before the first frame update
    void Start()
    {
        kontostandText.text = kontostand.ToString();
    }


    public void ItemKaufen(int itemPreis)
    {
        // Kontostand überprüfen
        if(kontostand >= itemPreis)
        {
            Debug.Log("Item wurde gekauft");
            // Item zum Inventar hinzufügen
            // Kontostand neu berechnen
            kontostand = kontostand - itemPreis;
            // Kontostand aktualisieren
        }
        
    }

Ich hatte mir ein Tutorial dazu angeschaut wie man es behebt, doch leider ohne Erfolg.

Weiß jemand, was das bedeutet/heißt und wie man es am einfachsten beheben kann, und wo da im Script der Fehler ist? Es soll ja angeblich in Zeile 15 sein. Ich hoffe, ihr versteht meine Message dazu ein wenig. Vielen Dank im voraus! :D

Bild zum Beitrag
Computer, Fehler, programmieren, C Sharp, Programmiersprache, Unity 3D, Visual Studio, Error Code, Unity, Spiele und Gaming

HTML input ausgeben?

Hallo Community,

ich habe einen Code für eine Webseite mit HTML geschrieben.

Nun ist es so, das ich den input von vier Feldern, welche sich oben auf der Webseite befinden, unten auf der Webseite angezeigt haben möchte. Ich habe schon viele Möglichkeiten im Internet gefunden, aber keine wollte so richtig funktionieren. Kann mir hier jemand bei meinem Problem helfen?

Bei dem Code kann ich euch nur einen Ausschnitt, nämlich den mit den betreffenden Teilen reinschicken, da die Frage sonst zu lang ist.

MfG Kuchenmonster31

Teilcode:

Feedbackwebsite
<form class="Formular" action="datenbank für website.py" method="post">
  Vorname:
  <input type="text" name="vorname" size="30" maxlength="50">
</form>
<!-- Nachname -->
<form class="Formular" action="datenbank für website.py" method="post">
  Nachname:
  <input type="text" name="nachname" size="30" maxlength="50">
</form>
<!-- Fedback für Coding School -->
<form class="Formular" action="datenbank für website.py" method="post">
  Feedback für die<br> Coding School:
  <textarea type="text" name="vorname" size="30" maxlength="1000"></textarea>
</form>
<!-- Feedback für Website -->
<form class="Formular" action="datenbank für website.py" method="post">
  Anmerkung zur <br> Website:
  <textarea type="text" name="vorname" size="30" maxlength="1000"></textarea>
</form>
<!-- Button damit die eingabe unten auf der Website angezeigt wird: -->
<button class="Button">Formular abschicken</button>
<h4 class="Ausgabe">Ausgabe:</h4>
HTML, Webseite, programmieren, CSS, Webdesign, Webentwicklung

H IL F E! Informatik Bug🤯!?

Java

habe eine klasse PriorityQueue. Diese speichert Objekte der Klasse QueueInhalt in einem Array namens queueinhalte. Die QueueInhalte - Objekte wiederrum speichern jeweils einen Verweis auf ein ein Objekt der Klasse ContentTypePerson.
Der Code der Klasse QueueInhalt ist kurz:

Das hier ist die add - Methode aus der PriorityQueue, jedenfalls der Teil für den Fall, wenn die Priorität des ContentTypePerson - Objektes (, wleches ja widerrum in einem QueueInhalt - Objekt gespeichert ist,) größer als Die des im Array am vordersten gelegenen Elements ist.

Es gibt auch noch eine Methode in der Klasse PriorityQueue, um den ArrayInhalt und so auszugeben (ich glaube, da liegt der folgende Fehler aber nicht):

Jetzt kommts: Ich habe ein Array der Größe 2 erstellt, ein Objekt ContentTypePerson mit dem Namen "A" erstellt und ihm beim Aufrufen der add Methode die Priorität 3 gegeben.
Beim Aufrufen der Methode gibInhalteDesArraysAus() kommt dann ensprechend:

Dann adde ich noch ein ContentTypePersonPerson - Objekt namens "B", diesmal mit der Priorität 4, damit der oben gezeigte Teil der add - Methode ausgeführt wird.
Doch dann wird ausgegegeben:

anstatt:
Inhalte: QueueInhalt@d54b68 (Name: B Priorität: 44) | QueueInhalt @17e26a8 (Name: A Priorität: 43)

HILFE! Wo ist der Bug? Ich sitze schon seit zwei Stunden hier fest! Sorry für so viele Bilder Code, ich bin mir nicht sicher in welchem Codeteil der Fehler liegen könnte

Bild zum Beitrag
Software, Schule, programmieren, Java, Informatik, Programmiersprache, Softwareentwicklung

Informatik "Rätsel"?

Programmiersprache: JavaWie stellt man bei der Datenstruktur Queue Objekte nicht hinten sondern vorne an? Also vom Code her.Kontext/Hintergrund von dieser Frage: Ich habe eine PriorityQueue. Doch dann soll plötzlich ein neues Objekt hinzugefügt werden, welches eine höhere Priorität als alle bereits in der PriorityQueue vorhandenen Objekte hat. (Da das hinzuzufügende Objekt ja die höchste Priorität hätte, müsste es ganz vorne in der PriorityQueue stehen).
Natürlich habe ich mir, bevor ich die Frage hier auf GF stelle, selbst nachgedacht, wie man das Problem lösen könnte. Bis jetzt ist mir aber nur

first = new QueueInhalt(pObject, pPriority);

eingefallen. Ich komme beim setNext(), also wenn der neue, eingefügte, Knoten QueueInhalt seinen Next - Link auf den ursprünglich an derselben Stelle (ganz vorne) gewesenen Knoten QueueInhalt setzt. (Wenn man ein Objekt hinten anstellt, schön nach FIFO halt, hätte ich kein Problem mit dem Setzen der next - links und first - links. Aber vorne anstellen? Keine Ahnung, wie das gehen soll.)
Danke und ein "Hilfreich" schonmal für eure Antworten😀

public void add(ContentTypePerson pObject, int pPriority) {
    QueueInhalt inhaltsobjekt = new QueueInhalt(pObject, pPriority);
    if (first == null) { //Wenn kein Objekt in der Queue vorhanden ist
    first = new QueueInhalt(pObject, pPriority);
    } else if (pPriority > first.getPriority()) {
    first = new QueueInhalt(pObject, pPriority);
//...?    
    }
}
Software, Schule, IT, programmieren, Java, Datenstrukturen, Informatik, Softwareentwicklung, Algorithmen und Datenstrukturen

Warum gibt es kein Super Mario Spiel mit Zufällig Generierte Level?

Hallo.

Also der selbe Jump and Run Level wird einestages langweilig, und das schlimme ist: Wenn man es mehr mals spielt, weißt man welche Strecke auf mich zu kommt. Und das ist so unrealistisch. Denn wenn ein Mensch Abenteuer reise machen muss, und man denn weg nicht kennt dann weißt man auch nicht welches Strecke erwarten wird. Und genau bei diese spiel ist es wichtig: Du darfs diese Strecke nie kennen.

Und deshalb müssen Levels bei Super Mario Zufällig Generiert. Doch die frage ist: Warum schafft Nintendo sowas gar nicht. Jetzt würde jeder sagen: "Zufällige Jump and run Level Generator ist nicht möglich". Nein das ist komplett falsch! Denn ich selber habe mit Game Maker Studio 2 hinbekommen ein Zufällige Jump and Run Generator zu erstellen.

Und das sind die ergebniss:

Und ich schwöre es: Diese Level habe ich nicht selber mit der Hand gemacht, sondern Ich habe das ganze nur im Code Geschrieben wie er generieren soll, und was er alles beachten muss damit man Levels immer schaffen kann (z. B. der Loch darf nur Maximal 3 Blöcke Lang werden). Und dann hat das ganze der Zufallsgenerator selber eingebaut.

Klar die Stacheln sehen noch nicht perfekt aus, da muss ich noch schauen wie ich das besser machen kann.

Deshalb ist die frage: Warum kann Nintendo z. B. auch nich sowas machen? Das wäre so genial New Super Mario Bros mit Zufällig Generierte Level für unendlich lange Spielspaß.

Bild zum Beitrag
Spiele, PC, Computer, Games, Nintendo, programmieren, Rechner, Mario, Super Mario, entwickeln, zufallsgenerator

Meistgelesene Beiträge zum Thema Programmieren