Error: int cannot be dereferenced

T3rmin__or

Neues Mitglied
HeyHo,
Ich habe letzte Nacht zur Übung ein Programm geschrieben, wo bei mir eine Fehlermeldung angezeigt wurde/wird, die ich nicht verstehe und auf die ich keine Antwort gefunden habe im Internet/ keine Lösung auf Deutsch bzw. die auf meinem Niveau ist. Deshalb habe ich mir gedacht, frage ich doch hier mal nach.
Code:
Java:
// Funktion Random Genarator für gewünschte Anzahl von Zahlen mit eingebarer Reichweite udn Start Button.
//17.03.2017 23:42 Uhr

import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;

public class Apllet1 extends Applet implements ActionListener, AdjustmentListener{
  private  Scrollbar anzahlZahlen;
  private int zahlenValue=0;

  private Button btnStart;
  private int count=0;

  private TextField höheZahlen;
  private double [] intArray = new double [zahlenValue];
  
  boolean startProgramm = false;

  public void init(){
    setSize(550,100);
    anzahlZahlen= new Scrollbar(Scrollbar.HORIZONTAL,0,1,0,100);
    add(anzahlZahlen);
    anzahlZahlen.addAdjustmentListener(this);
  
    btnStart = new Button("Starte die Zahlen x");
    add(btnStart);
    btnStart.addActionListener(this);
  
    Label labhöheZahlen = new Label ("0 bis welcher Zahl soll es gehen?");
    höheZahlen = new TextField (10);
    add(höheZahlen);
  
    }
  
  public void  actionPerformed (ActionEvent event){
    int höheZahlen;
    if (event.getSource()==btnStart){
      höheZahlen=Integer.parseInt(höheZahlen.getText());
      for(int i=0;i<=zahlenValue;i++) {
      intArray[i] = (int) (Math.random()*(float)höheZahlen); 
      } // end of for
    } // end of if
   
    startProgramm=true;
    repaint();
    }
   
  public void paint (Graphics g) {
    int xP=65;
    int yP=100;
    if (startProgramm=true) {
      g.drawString("Hier sind deine Random Zahlen: ",50,100);
      for(int z=0;z<=zahlenValue;z++) {
         g.drawString(""+intArray[z] ,xP,yP);
         xP=xP+15;
        if (xP>400) {
          yP=yP+15;
        } // end of if
      } // end of for
    } // end of if
    }
   
  public void adjustmentValueChanged (AdjustmentEvent e){
    zahlenValue= anzahlZahlen.getValue();
    repaint();
    }
  }

Folgende Fehlermeldung trat dann auf:
Code:
Apllet1.java:41:45: error: int cannot be dereferenced
      höheZahlen=Integer.parseInt(höheZahlen.getText());
Danke für eure Hilfe im voraus.
 
Zuletzt bearbeitet von einem Moderator:

Robat

Top Contributor
Du hast eine globale Variable vom Typ TextField mit dem Namen höheZahlen und eine lokale int Variable die genauso heißt.

höheZahlen=Integer.parseInt(höheZahlen.getText());
Du versuchst hier also die Methode getText() auf den primitiven Datentyp int anzuwenden - was nicht funktioniert. Du kannst keine Methoden auf primitive Datentypen (int, double,..) anwenden.

Entweder gewöhnst du dir an "ordentliche" Variablennamen zu nehmen - und vor allem nicht 2 mal den selben - oder du greifst mittels des this Operators auf die globale Variable höheZahlen - damit auf das TextField - zu.

Also entweder:
Java:
private TextField tfMaxNumbers;

...

public void actionPerformed(ActionEvent e)
{
    int maxNumbers = Integer.parseInt(tfMaxNumbers.getText());
     ....
}

oder

Java:
private TextField maxNumbers;

...

public void actionPerformed(ActionEvent e)
{
    int maxNumbers = Integer.parseInt(this.maxNumbers.getText());
}

Wobei ich dir von der letzten Lösung abraten würde.

Noch 2 kleine Hinweise:
- Das nächstes mal bitte Stacktrace und Code getrennt in [code=Java]MY CODE[/code] Tags posten.
Das kann man dann besser lesen / zitieren :)
- Vermeide Umlaute in der Programmierung - das kann zu Problemen führen :)

Gruß Robert
 

Wölfin

Mitglied
Für ein Schulprojekt habe ich den selben Fehler, komme jedoch nicht auf die Lösung für das Problem.
Code:
try(int neuerCocktail = cocktail.lesen1()){
if(neuerCocktail == 1){
...
}
}catch (InterruptedException e){
System.err.println(e);
}
Beim Methodenaufruf kommt die Fehlermeldung int cannot be dereferenced.
Cocktail. ist ein Objekt der Klasse Cocktail. Daraus die Methode lesen.
Code:
public int lesen() throws InterruptedException {
final GpioController gpio = GpioFactory.getInstance();
final GpioPinDigitalInput myButton1 = gpio.provisionDigitalInputPin(RaspiPin.Gpio_04, PinPullResistance.Pull_DOWN);
int neuerCocktail1 = 0;
if(myButton1.getState() == PinState.HIGH){
neuerCocktail1 = 1;
}
return neuerCocktail1;
}
 

mrBrown

Super-Moderator
Mitarbeiter
Das, was aktuell in den normalen Klammern hinterm try steht, sollte runter gezogen werden in den Block.

(Die normalen Klammern nutzt man für try-with-resources, dort gibt man AutoCloseable's an, die automatisch geschlossen werden sollen - ein int ist aber offensichtlich nichts derartiges ;) )
 

Wölfin

Mitglied
Code:
import javax.swing.JFrame;
import java.awt.Color;
import java.awt.Container;
import java.util.*;

public class Frame extends JFrame
{
    private  int nummer1;
    LinkedList<Integer> list = new LinkedList<Integer>();
    LinkedList<Integer> list2 = new LinkedList<Integer>();
    private int cocktail1;
    private int nummer2 = 0;
    private int cocktail2;
    private  int  nummer3;
    //private int neuerCocktail;
    //private int fertig;
    Server server;
    public    Panel1 p1 = new Panel1();
    public    Panel2 p2 = new Panel2();
    public    Panel1 p3 = new Panel1();
    public    Panel4 p4 = new Panel4();
    public    Panel5 p5 = new Panel5();
    public    Panel6 p6 = new Panel6();
    public    Panel7 p7 = new Panel7();
    public    Panel8 p8 = new Panel8();
    public    Panel9 p9 = new Panel9();
    public    Panel10 p10 = new Panel10();
    public    Panel11 p11 = new Panel11();
    public    Panel12 p12 = new Panel12();
    public    Panel13 p13 = new Panel13();
    public    Panel14 p14 = new Panel14();
    public    Panel15 p15 = new Panel15();
    public    Panel16 p16 = new Panel16();
    public    Panel17 p17 = new Panel17();
  
    //Server server1 = new Server(49566);
    private int i = 0;
    Cocktail cocktail = new Cocktail();
    public Frame()
    {
        super("Bildschirmausgabe");
        //this.server = server;
        // Server server = new Server(49566);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        Container c = getContentPane();
        c.setBackground(Color.white);
        c.setLayout(null);
        setVisible(true);
      
        p2.setBounds(40, 10, 200, 40);
        p1.setBounds(40, 60, 90, 40);
        p3.setBounds(40, 110, 90, 40);
        p4.setBounds(40, 160, 90, 40);
        p5.setBounds(40, 210, 90, 40);
        p6.setBounds(40, 260, 90, 40);
        p7.setBounds(40, 310, 90, 40);
        p8.setBounds(40, 360, 90, 40);
        p9.setBounds(150, 60, 90, 40);
        p10.setBounds(150, 110, 90, 40);
        p11.setBounds(150, 160, 90, 40);
        p12.setBounds(150, 210, 90, 40);
        p13.setBounds(150, 260, 90, 40);
        p14.setBounds(150, 310, 90, 40);
        p15.setBounds(150, 360, 90, 40);
        p16.setBounds(270, 10, 330, 40);
        p17.setBounds(270, 60, 330, 340);
      
        c.add(p1);
        c.add(p4);
        c.add(p5);
        c.add(p6);
        c.add(p7);
        c.add(p8);
        c.add(p9);
        c.add(p10);
        c.add(p11);
        c.add(p12);
        c.add(p13);
        c.add(p14);
        c.add(p15);
        c.add(p16);
        c.add(p17);
        
        
        setSize(500, 500);
        setVisible(true);
        //Server server1 = new Server(49566);
        //server1.startServer();
    }
    public  void nummer( int nummer, int cocktail){
        this.cocktail1 = cocktail;
        nummer1 = nummer;
        int y = 0;
        //while(true){
          
            
            
            int neuerCocktail;
            int fertig;
            
            if (nummer1 == nummer2){
            
            }
            else{
                list.add(i,nummer1);
                list.add(i,cocktail1);
                nummer2 = nummer1;
                i++;
                if (i<=27){
                    switch (y){
                        case 0:
                            nummer3 = list.get(0);
                            
                            p1.wert(nummer3);
                            y = 1;
                            
                        case 1:
                            nummer3 = list.get(1);
                            p3.wert(nummer3);
                            y = 2;
                            
                        case 2:
                            nummer3 = list.get(2);
                            p4.wert(nummer3);
                            y = 3;
                            
                        case 3:
                            nummer3 = list.get(3);
                            p5.wert(nummer3);
                            y = 4;
                            
                        case 4:
                            nummer3 = list.get(4);
                            p6.wert(nummer3);
                            y = 5;
                            
                        case 5:
                            nummer3 = list.get(5);
                            p7.wert(nummer3);
                            y = 6;
                          
                        case 6:
                            nummer3 = list.get(6);
                            p8.wert(nummer3);
                            y = 7;
                          
                        case 7:
                            nummer3 = list.get(7);
                            p9.wert(nummer3);
                            y = 8;
                          
                        case 8:
                            nummer3 = list.get(8);
                            p10.wert(nummer3);
                            y = 9;
                          
                        case 9:
                            nummer3 = list.get(9);
                            p11.wert(nummer3);
                            y = 10;
                          
                        case 10:
                            nummer3 = list.get(10);
                            p12.wert(nummer3);
                            y = 11;
                          
                        case 11:
                            nummer3 = list.get(11);
                            p13.wert(nummer3);
                            y = 12;
                            
                        case 12:
                            nummer3 = list.get(12);
                            p14.wert(nummer3);
                            y = 13;
                            
                        case 13:
                            nummer3 = list.get(13);
                            p15.wert(nummer3);
                            y = 14;
                            
                        
                    }
                
            }   
        //}
    
    }
    try{
    int neuercocktail = cocktail.lesen1();
        if (neuerCocktail == 1){
            cocktail.port(list2.get(0));
            cocktail2 = list.get(0);
            p16.wert(cocktail2, 0);
            list.removeFirst();
            list2.removeFirst();
        }
    }catch (InterruptedException e) {
        System.err.println(e);
    }
    
    try{
    int fertig = cocktail.lesen2();
        if(fertig ==1){
            p16.wert(cocktail2, 1);
        }
    }catch (InterruptedException e) {
        System.err.println(e);
    }
    
            
     setVisible(true);
    }
}
Code:
import com.pi4j.io.gpio.GpioController;
import com.pi4j.io.gpio.GpioFactory;
import com.pi4j.io.gpio.GpioPinDigitalOutput;
import com.pi4j.io.gpio.GpioPinDigitalInput;
import com.pi4j.io.gpio.PinState;
import com.pi4j.io.gpio.RaspiPin;
import com.pi4j.io.gpio.PinPullResistance;
/**
 * Write a description of class Verarbeitung here.
 *
 * @author (your name)
 * @version (a version number or a date)
 */
public class Cocktail{
    private int nummer;
    private boolean l=true;
    private int x = 0;
    private int y = 0;
  public int neuerCocktail;
  public Cocktail()  {
      
      
      
  }   
 
  public void port(int nummer) throws InterruptedException {
      
      final GpioController gpio = GpioFactory.getInstance();
      
      GpioPinDigitalOutput[] pins = new GpioPinDigitalOutput[3];
      
      pins[0] = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_00, "MyLED", PinState.LOW); //GPIO 11
      pins[1] = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_01, "MyLED", PinState.LOW); //GPIO 12
      pins[2] = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_02, "MyLED", PinState.LOW); //GPIO 13
      pins[3] = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_03, "MyLED", PinState.LOW); //GPIO 15
      int i= nummer;
      x =1;
      y = 0;
      switch(i){
          case 0:
            break;
          case 1:
            pins[0].high();;
            Thread.sleep(100);
            pins[0].low();;
            break;
          case 2:
            pins[1].high();;
            Thread.sleep(100);
            pins[1].low();;
            break;
          case 3:
            pins[2].high();;
            Thread.sleep(100);
            pins[2].low();;
            break;
          case 4:
            pins[3].high();;
            Thread.sleep(100);
            pins[3].low();;
            break;
          default:
            l= false;
      
  }
 
}
public  int lesen1() throws InterruptedException {
    final GpioController gpio = GpioFactory.getInstance();
    final GpioPinDigitalInput myButton1 = gpio.provisionDigitalInputPin(RaspiPin.GPIO_04, PinPullResistance.PULL_DOWN); //PORt16
    
     int neuerCocktail1 = 0;
     int ja = 0;
        if(myButton1.getState() == PinState.HIGH){
             ja = 1;
            
        }
        if (ja == 1) {           
            neuerCocktail1 = 1;
            }
        

        return neuerCocktail1;
    
}
public  int lesen2() throws InterruptedException {
    final GpioController gpio = GpioFactory.getInstance();
    final GpioPinDigitalInput myButton2 = gpio.provisionDigitalInputPin(RaspiPin.GPIO_05, PinPullResistance.PULL_DOWN); // Port18
     int fertig1 = 0;
    if(myButton2.isHigh()){
        fertig1 = 1;
    }
    return fertig1;
}
}
 

mrBrown

Super-Moderator
Mitarbeiter
Da werden mindestens zwei Fehler angezeigt, aber keiner von beiden ist der ursprüngliche...

Beide solltest du problemlos lösen können, dazu sollten die Fehlermeldungen ausreichen :)
 

leneborma

Neues Mitglied
Java has two different types of variables: primitive and objects and only objects are reference types. The type int is a primitive and not an object. Dereferencing is the process of accessing the value referred to by a reference. Since, int is already a value, it can not be dereferenced . Primitives (byte, char, short, int, long, float, double, boolean) are not objects and do not have variable or methods. They're just simple values. So you can not do somePrimitive.something ().

It is actually laying out in the memory. Thus, we can say that accessing the state or behavior of an object using its reference with the help of the dot (.) Operator is called dereferencing.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
F Erste Schritte error: cannot find symbol Java Basics - Anfänger-Themen 5
L Bluej Error: Cannot find Symbol Java Basics - Anfänger-Themen 13
H Variablen error: non-static variable cannot be referenced from a static context Java Basics - Anfänger-Themen 4
J Error: cannot find symbol - variable Java Basics - Anfänger-Themen 3
D error: cannot find symbol Java Basics - Anfänger-Themen 3
B Frage zu Beispielprogramm: "error: cannot find symbol" Java Basics - Anfänger-Themen 2
BlueMountain Erste Schritte error: cannot find symbol Java Basics - Anfänger-Themen 2
L Error: Cannot find symbol Java Basics - Anfänger-Themen 1
K Objekt erstellen - error: non-static variable this cannot be referenced from a static context Java Basics - Anfänger-Themen 17
M Compile Time Error - cannot find symbol (Objekt!) Java Basics - Anfänger-Themen 2
C Error: The final local variable variable cannot be assigned, since it is defined in an enclosing typ Java Basics - Anfänger-Themen 4
P Error: Cannot find Symbol Java Basics - Anfänger-Themen 4
T Anfänger: cannot read: error 1 Java Basics - Anfänger-Themen 8
I Exception wird gefangen, aber trotzdem in Error Log? Java Basics - Anfänger-Themen 10
terashy VS Code Project run error Java Basics - Anfänger-Themen 10
monsterherz Circle.java:5: error: <identifier> expected Java Basics - Anfänger-Themen 2
monsterherz error: <identifier> expected Java Basics - Anfänger-Themen 2
R Compiler-Fehler identifier error? Java Basics - Anfänger-Themen 3
N Compiler-Fehler Not a statement Error Java Basics - Anfänger-Themen 7
Jul1n4tor Scanner error bei Eingabe die kein Integer ist Java Basics - Anfänger-Themen 4
richrich99 error: illegal start of expression Java Basics - Anfänger-Themen 10
M error: '.class' expected switch(char) Java Basics - Anfänger-Themen 32
N Compiler-Fehler State Machine - Compiler Error Java Basics - Anfänger-Themen 48
U Interface als PAramter (Vergleich) und ein Error Java Basics - Anfänger-Themen 9
FHEFHJHFJH error: class names, 'summe_bsp', are only accepted if annotation processing is explicitly requested Java Basics - Anfänger-Themen 3
S JavaKara Null Exception Error Java Basics - Anfänger-Themen 4
P Eclipse Karate Framework API Test . Unexpected Error: the trustAnchors parameter must be non-empty Java Basics - Anfänger-Themen 1
H Versteht jemand diesen Codewars Error? Java Basics - Anfänger-Themen 8
J Fehlermeldung: A JNI error Java Basics - Anfänger-Themen 3
Gaudimagspam Compiler Error Java Basics - Anfänger-Themen 3
Eule25 Arbeit mit long und int, Error: integer number too large Java Basics - Anfänger-Themen 2
P Welche Zeile in Tadople gibt einen compiler error? Java Basics - Anfänger-Themen 5
B Methoden if-statement error, FX, Fehlermeldung Java Basics - Anfänger-Themen 6
K Error bei meinem Programm - Hilfe Java Basics - Anfänger-Themen 8
A Scanner-Error Java Basics - Anfänger-Themen 8
Elyt Error: incompatible types Java Basics - Anfänger-Themen 3
I Client ObjectInputStream error... Java Basics - Anfänger-Themen 5
Kirby.exe Alle möglichen Error Möglichkeiten abfangen Java Basics - Anfänger-Themen 33
C error: <identifier> expected Java Basics - Anfänger-Themen 13
S Compiler-Fehler Exception in thread "main" java.lang.Error: Unresolved compilation problem: Java Basics - Anfänger-Themen 6
N Methoden Unerklärliche Error Meldung Java Basics - Anfänger-Themen 3
ZH1896ZH Datentypen Error bei For-Schleife Java Basics - Anfänger-Themen 2
R Error, wenn mehrere Clients gleichzeitig die Verbindung beenden Java Basics - Anfänger-Themen 16
Z Klassen Error: ';' expected - was mache ich falsch? Java Basics - Anfänger-Themen 4
9 Error bei .split() Java Basics - Anfänger-Themen 2
L Operatoren error: bad operand types for binary operator && Java Basics - Anfänger-Themen 8
B cal4j - Error at line 1:Unexpected end of file Java Basics - Anfänger-Themen 0
L SQLITE - Syntax error Java Basics - Anfänger-Themen 3
R else without if error Java Basics - Anfänger-Themen 5
A Objekt in Methode zurückgeben, JUnit zeigt Error Java Basics - Anfänger-Themen 2
F Ausdruck wirft unerwarteten Error Java Basics - Anfänger-Themen 2
T Unverständlicher Launch-Error Java Basics - Anfänger-Themen 11
R java.lang.ArrayIndexOutOfBoundsException: 0 Rechner Error Java Basics - Anfänger-Themen 4
F Taschenrechner "Error loading class..." Java Basics - Anfänger-Themen 5
D Datentypen Datentyperstellung | Kompiler sagt Syntax Error doch ich find keine Lösung Java Basics - Anfänger-Themen 2
J Syntax error on token ";",, expected Java Basics - Anfänger-Themen 2
W double*double error Java Basics - Anfänger-Themen 4
C Compiler-Fehler No such Field error Java Basics - Anfänger-Themen 20
B Linux - Error: Could not find or load main class application.Main Java Basics - Anfänger-Themen 28
T Datum wird auf der Konsole richtig ausgegeben, aber im Textarea kommt ERROR Java Basics - Anfänger-Themen 8
C Erste Schritte Syntax Error Java Basics - Anfänger-Themen 23
H Compiler-Fehler error not a statement Java Basics - Anfänger-Themen 2
N Error bei eingabe eines Punktes Java Basics - Anfänger-Themen 1
T error: class, interface, or enum expected Java Basics - Anfänger-Themen 5
TheMenox Error bei Scanner - woher? Java Basics - Anfänger-Themen 14
D Compiler-Fehler error: .class expected Java Basics - Anfänger-Themen 2
Chr1s Interpreter-Fehler Error Fehlercode Java Basics - Anfänger-Themen 7
D Bitte um Hilfe bei "error: package com.apple.eawt does not exist import com.apple.eawt.*;" Java Basics - Anfänger-Themen 1
S Compiler-Fehler error: ';' expected (finde Fehler nicht) Java Basics - Anfänger-Themen 10
D Erste Schritte Fehlermeldung "Syntax error on token ";", { expected after this token" Java Basics - Anfänger-Themen 13
L Compiler-Fehler error: class, interface or enum expected Java Basics - Anfänger-Themen 2
1 Bei if-Anweisung: Syntax error on token Java Basics - Anfänger-Themen 5
D Übung Felder java Error kompilieren Java Basics - Anfänger-Themen 4
Joew0815 Error org.apache.xmlrpc.client.XmlRpcClientConfigImpl.setUserAgent Java Basics - Anfänger-Themen 2
A Code läuft nicht, Fehlermeldung Exception in thread "main" java.lang.Error: Unresolved compilation " Java Basics - Anfänger-Themen 11
C Exception Error Java Basics - Anfänger-Themen 15
A Heap Space Error bei rekursiver Suche in Dateien trotz nur einer Zeile im Speicher Java Basics - Anfänger-Themen 26
B Not a statement error Java Basics - Anfänger-Themen 2
F java Ip ping + Dateiausgabe error ! Java Basics - Anfänger-Themen 3
O Exception Error Java Basics - Anfänger-Themen 3
B Printf führt zu Error. Java Basics - Anfänger-Themen 8
P Fatal Error [...] librxtxSerial.so Java Basics - Anfänger-Themen 2
D error: Class names, >>>HILFE, anfänger<<< Java Basics - Anfänger-Themen 4
A Taschenrechner zeigt Error Java Basics - Anfänger-Themen 7
B Compiler-Fehler 86:11: error: ';' expected obwohl kein ";" hingehört! Java Basics - Anfänger-Themen 10
K Java-Editor: "Starten" bringt Error Java Basics - Anfänger-Themen 15
N Error "unreachable Code" Java Basics - Anfänger-Themen 7
A error: incompatible types Java Basics - Anfänger-Themen 9
T If ; else error on system token delete Java Basics - Anfänger-Themen 5
B Error vs Runtime exception Java Basics - Anfänger-Themen 4
W Variablen While-Error Java Basics - Anfänger-Themen 6
N Operatoren JSpinner und + Error Java Basics - Anfänger-Themen 21
M Java Arbeitsspeicherverbrauch, Heap Space error korrigieren? Java Basics - Anfänger-Themen 18
D Error bei addView Java Basics - Anfänger-Themen 4
M Syntax error on token ";", { expected after this token Java Basics - Anfänger-Themen 3
J Variablen Invalid Character - Error -> Spiel mit Variablenergebnissen Java Basics - Anfänger-Themen 8
K Erste Schritte eclipse syntax error token Java Basics - Anfänger-Themen 5
vandread String.split("\\") führt zu Error?! Java Basics - Anfänger-Themen 8
G Fehlermeldung: A fatal error has been detected by the Java Runtime Environment Java Basics - Anfänger-Themen 7
B Compiler-Fehler import java.io.*; führt zu error Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben