Cannot be resolved to a variable

TurboKarl

Mitglied
Hey,

bin ganz neu in der "Programmierwelt" und bin gerade dabei mir die Basics in Sachen Java anzueignen.
Leider hab ich auch schon den ersten Fehler, und komme einfach nicht dahinter, was ich falsch mache.

Hier erstmal der Code:

Java:
public class Temperaturumrechung {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
	   	final int ADD_FAKTOR = 32;	
		final int MULT_FAKTOR = 5;
		final int DIV_FAKTOR = 9;
		System.out.println ("Was möchten Sie umrechnen?");
		System.out.println ("c: Celsius in Fahrenheit");
		System.out.println ("f: Fahrenheit in Celsius");
		char choice = Input.readChar();
		if (choice == 'c'){
			System.out.println ("Geben Sie bitte die Temperatur in °C an");
			double tCelsius = Input.readInt();
			ergebnis = tCelsius * MULT_FAKTOR / DIV_FAKTOR + ADD_FAKTOR;
			System.out.print(tCelsius + "°C sind °F: " );
		} else {
			System.out.println ("Geben Sie bitte die Temperatur in °F an");
			double tFahrenheit = Input.readInt();
			ergebnis = (tFahrenheit - ADD_FAKTOR) * DIV_FAKTOR / MULT_FAKTOR;
			System.out.print(tFahrenheit + "°F sind in °C: " );
			
		}
	System.out.println (ergebnis);
	}

}

Der Fehler der kommt betrifft die Zeilen 18 und 23 und lautet: "ergebnis cannot be resolved to a variable", was bedeutet dieser Fehler und wie kann ich ihn verhindern?

Gruß und schoneinmal Danke
 

TurboKarl

Mitglied
Hey,

super,danke!

ich habe also nun "double ergebnis" in den Kopf geschrieben und es klappt.

edit: Kleine Nebenfrage, ist eine Deklaration über meinen ganzen Text hinweg gültig?

Gruß
 

Andi_CH

Top Contributor
Eine Deklaration ist in einem Block gültig und der reicht im Noramlfall von der { oderhalb bis zur } unterhalb.

Ich hab mal etwas in deinen Code geschrieben.

Java:
    public static void main(String[] args) {
        final int ADD_FAKTOR = 32;  
        final int MULT_FAKTOR = 5;
        final int DIV_FAKTOR = 9;
        System.out.println ("Was möchten Sie umrechnen?");
        System.out.println ("c: Celsius in Fahrenheit");
        System.out.println ("f: Fahrenheit in Celsius");
        char choice = Input.readChar();
        if (choice == 'c'){
            System.out.println ("Geben Sie bitte die Temperatur in °C an");
            double tCelsius = Input.readInt();
            ergebnis = tCelsius * MULT_FAKTOR / DIV_FAKTOR + ADD_FAKTOR;
            System.out.print(tCelsius + "°C sind °F: " );
// tCelsius ist bekannt
// Hier sind choice und die Konstanten bekannt
        }
// ab hier existiert tCelsius nicht mehr
        else {
// hier gibt es auch choice und die Konstanten, aber tCelsius ist unbekannt
            System.out.println ("Geben Sie bitte die Temperatur in °F an");
            double tFahrenheit = Input.readInt();
            ergebnis = (tFahrenheit - ADD_FAKTOR) * DIV_FAKTOR / MULT_FAKTOR;
            System.out.print(tFahrenheit + "°F sind in °C: " );
        }
// hier gibt es weder tCelsius nocht tFahrenheit
    System.out.println (ergebnis);
    }
 
Zuletzt bearbeitet:

Volvagia

Top Contributor
Kommt drauf an, wo du sie deklarierst.
Wenn es in der Main ist, ist sie in der Main gültig. Wenn du in der if deklarierst, ist sie in der if gültig. So ist das mit jeden Block (while, do, for, try) ausgenommen synchronized, da es dafür keine Bedingung gibt, die ihm nur unter bestimmten Umständen abarbeiten lassen.
Wenn du sie ober der Main in der Klasse deklarierst, ist sie solange gültig, bis die Instanz nicht mehr gebraucht wird. Wenn du sie in der Main in der Klasse mit static deklarierst, ist sie das ganze Programm über gültig. (Da bin ich mir nicht 100 % sicher, wäre aber logisch.)

btw. geht ihr zufällig in die selbe Klasse? http://www.java-forum.org/java-basics-anfaenger-themen/116719-mehrere-einlesevorgaenge-moeglich.html
 

Guardi

Bekanntes Mitglied
Deine Variable ist dann im Namensraum deiner Klasse gültig, also z.b. in allen lokalen Methoden der Klasse.
Eine Variable die du in einer Methode deklarierst ist nur im Namensraum der Methode sichtbar usw.

Desweiteren ist eine Klassen-Variable, Methode etc. ausserhalb seines Namensraums bekannt wenn du sie public oder protected deklarierst (paketsichtbarkeit). Und ausschliesslich innerhalb der deklarierenden Klasse wenn private.
 

Andi_CH

Top Contributor
Hast du dir auch schon überlegt, dass jemand der nicht weiss wie weit ein Name gültig ist, auch nicht weiss was ein Namensraum ist ???:L - ts ts ts - mein Beispiel oben zeigt doch wenigstens etwas konkretes.
 

fastjack

Top Contributor
Yep, er fragt ja auch nur nach dem Fehler mit ergebnis, das muß halt "oben" in der main()-Methode definiert werden. Stufe 2 sollte, das Du Dich mit Packages und Sichtbarkeiten auseinandersetzt.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Erste Schritte [Variable] cannot be resolved to a variable Java Basics - Anfänger-Themen 4
M Methoden Cannot be resolved to a variable Java Basics - Anfänger-Themen 5
P Variablen Cannot be resolved to a variable Java Basics - Anfänger-Themen 8
W Compiler-Fehler variable cannot be resolved / duplicate local variable Java Basics - Anfänger-Themen 11
J Scanner cannot be resolved to a type Java Basics - Anfänger-Themen 3
C system cannot be resolved Fehler in Eclipse Java Basics - Anfänger-Themen 18
V ClientProtocolException cannot be resolved Java Basics - Anfänger-Themen 6
J The import org.bukkit cannot be resolved Java Basics - Anfänger-Themen 3
P a cannot be resolved bei einer do while Schleife Java Basics - Anfänger-Themen 1
J JLabel cannot be resolved Java Basics - Anfänger-Themen 8
B OOP next cannot be resolved or is not a field Java Basics - Anfänger-Themen 6
P enum: cannot be resolved to a type Java Basics - Anfänger-Themen 2
K Compiler-Fehler Button cannot be resolved or is not a field Java Basics - Anfänger-Themen 6
F Input/Output IOTools Fehlermeldung: cannot be resolved Java Basics - Anfänger-Themen 16
N Erste Schritte import javax.media.3d....; //Fehlermeldung: cannot be resolved Java Basics - Anfänger-Themen 10
H LocationReferenceImpl cannot be resolved to a type Java Basics - Anfänger-Themen 5
R Compiler-Fehler sequenz cannot be resolved or is not a field Java Basics - Anfänger-Themen 2
C i cannot be resolved (obwohl es im schleifekopf initialisiert worden ist) Java Basics - Anfänger-Themen 2
C Fehlermeldung "The import TestProjekt cannot be resolved". Warum? Java Basics - Anfänger-Themen 7
V IO cannot be resolved Java Basics - Anfänger-Themen 7
N Fehlermeldung: cannot be resolved Java Basics - Anfänger-Themen 2
J Color cannot be resolved to a type Java Basics - Anfänger-Themen 4
F "n cannot be resolved" Fehler im einfachen programm - Warum? Java Basics - Anfänger-Themen 11
T The import In cannot be resolved Java Basics - Anfänger-Themen 31
T import java.util.scanner cannot be resolved Java Basics - Anfänger-Themen 19
P Enums - cannot be resolved Java Basics - Anfänger-Themen 2
D r cannot be resolved Java Basics - Anfänger-Themen 5
C In cannot be resolved Java Basics - Anfänger-Themen 3
T Array kann nicht erkannt werden (cannot b resolved) Java Basics - Anfänger-Themen 4
J String cannot be resolved to a type Java Basics - Anfänger-Themen 6
K vector cannot be resolved Java Basics - Anfänger-Themen 3
O e cannot be resolved Java Basics - Anfänger-Themen 4
N System.out cannot be resolved Java Basics - Anfänger-Themen 28
M br cannot be resolved Java Basics - Anfänger-Themen 3
J import cannot be resolved Java Basics - Anfänger-Themen 23
P cannot be resolved? Java Basics - Anfänger-Themen 5
G import javax.servlet cannot be resolved Java Basics - Anfänger-Themen 1
G Probleme mit importieren: The Import Jama cannot be resolved Java Basics - Anfänger-Themen 23
N com.sun.mirror cannot be resolved bzw. how 2 get methodNames Java Basics - Anfänger-Themen 8
T "Locale cannot be resolved" Java Basics - Anfänger-Themen 3
W Cannot find Symbol Java Basics - Anfänger-Themen 5
M NullPointerException: Cannot read the array length because "this.Kinder" is null Java Basics - Anfänger-Themen 1
D Cannot find JUnit.framework Java Basics - Anfänger-Themen 1
W Cannot resolve symbol 'HttpServlet' Java Basics - Anfänger-Themen 2
I JSON - cannot deserialize from Object value Java Basics - Anfänger-Themen 16
N Fehler "Cannot instantiate the type" Java Basics - Anfänger-Themen 3
jakobfritzz Array- cannot invoke "" because "" is null Java Basics - Anfänger-Themen 4
Flo :3 Variablen Type dismatch: cannot convert from string to int Java Basics - Anfänger-Themen 9
A Cannot find symbol mit Konstruktoren Java Basics - Anfänger-Themen 27
A Cannot find symbol bei exceptions Java Basics - Anfänger-Themen 2
J Fehlermeldung unklar. non-static variable player0 cannot be referenced from a static context Java Basics - Anfänger-Themen 4
P non-static variable cannot be referenced from a static context Java Basics - Anfänger-Themen 6
L cannot find symbol variable Kon Java Basics - Anfänger-Themen 8
L constructor cannot be applied... Java Basics - Anfänger-Themen 22
F Erste Schritte error: cannot find symbol Java Basics - Anfänger-Themen 5
M Cannot make a static reference to the non-static method Java Basics - Anfänger-Themen 10
R return: cannot find symbol Java Basics - Anfänger-Themen 2
L Bluej Error: Cannot find Symbol Java Basics - Anfänger-Themen 13
Aprendiendo Interpreter-Fehler "non-static variable this cannot be referenced from a static context" Java Basics - Anfänger-Themen 2
M Iterator cannot refer to a non final... Java Basics - Anfänger-Themen 20
S Cannot find symbol (symbol ist eine Variable) Java Basics - Anfänger-Themen 13
N Cannot find symbol Java Basics - Anfänger-Themen 18
T Error: int cannot be dereferenced Java Basics - Anfänger-Themen 10
H Variablen error: non-static variable cannot be referenced from a static context Java Basics - Anfänger-Themen 4
P Cannot find symbol, wieso? Java Basics - Anfänger-Themen 5
UnityFriday method getPrevious in class List<ContentType> cannot be applied to given types Java Basics - Anfänger-Themen 29
M Erste Schritte cannot find symbol - Probleme mit Klassen Java Basics - Anfänger-Themen 6
B OOP Cannot instantiate the type AuDList<Integer> Java Basics - Anfänger-Themen 18
U Erste Schritte cannot be referenced from a static context Java Basics - Anfänger-Themen 1
J Error: cannot find symbol - variable Java Basics - Anfänger-Themen 3
D Java Eclipse cannot be cast to java.awt.event.ItemListener Java Basics - Anfänger-Themen 3
F Erste Schritte parseint: cannot find symbol Java Basics - Anfänger-Themen 6
J Fehlermeldung : cannot invoke char(at) int on the primitive type int --- Anfänger Java Basics - Anfänger-Themen 5
M The Selection cannot be launched... Java Basics - Anfänger-Themen 4
M Vererbung - Cannot Find Symbol constructor... Java Basics - Anfänger-Themen 11
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
W Compiler-Fehler "non-static method cannot be referenced"-Problem Java Basics - Anfänger-Themen 6
L Error: Cannot find symbol Java Basics - Anfänger-Themen 1
W int cannot be dereferenced Java Basics - Anfänger-Themen 5
P Cannot find Symbol Java Basics - Anfänger-Themen 3
F Methoden Cannot refer to a non-final variable.. verständnisproblem. Java Basics - Anfänger-Themen 7
A Cannot make a static reference to the non-static field Java Basics - Anfänger-Themen 6
K The Java Runtime Environment cannot be found. Java Basics - Anfänger-Themen 6
L Cannot Find Symbol - Was soll denn das bedeuten?!? Java Basics - Anfänger-Themen 7
P StdIn.readDouble: cannot find symbol Java Basics - Anfänger-Themen 7
B Fehler "Cannot find symbol - variable number1" Java Basics - Anfänger-Themen 13
B Compiler-Fehler cannot find symbol Java Basics - Anfänger-Themen 6
K Date cannot be cast to java.lang.Integer Java Basics - Anfänger-Themen 4
M Methoden "Non-static method xy cannot be referenced from a static context" Java Basics - Anfänger-Themen 20
T Cannot convert from Integer to int Java Basics - Anfänger-Themen 12
K Cannot find symbol Java Basics - Anfänger-Themen 3
H cannot find symbol Java Basics - Anfänger-Themen 4
K Objekt erstellen - error: non-static variable this cannot be referenced from a static context Java Basics - Anfänger-Themen 17
S cannot find symbol, symbol: constructor Java Basics - Anfänger-Themen 2
3 Compiler-Fehler Fehlerbehebung cannot find Symbol Java Basics - Anfänger-Themen 4
R Compiler-Fehler Cannot find symbol (Method printIn) Java Basics - Anfänger-Themen 3
H non-static method cannot be referenced from a static context Java Basics - Anfänger-Themen 2
M Meldung "cannot convert flom boolean to boolean[]" Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben