Archief - [PROG]java progske met klein foutje

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

stimpy13

Legacy Member
kzit met een klein probleemke
Dit is de fout :

getalgokker.java [84:1] variable g might not have been initialized
if (g == j)
^
1 error




import java.util.Random;
public class getalgokker extends javax.swing.JApplet {


/** Initializes the applet getalgokker */
public void init() {
initComponents();

}

/** This method is called from within the init() method to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
private void initComponents() {
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jTextField1 = new javax.swing.JTextField();
jTextField2 = new javax.swing.JTextField();
jTextField3 = new javax.swing.JTextField();

getContentPane().setLayout(null);

jButton1.setText("Genereer een getal");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});

getContentPane().add(jButton1);
jButton1.setBounds(60, 40, 210, 50);

jButton2.setText("Gokken");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});

getContentPane().add(jButton2);
jButton2.setBounds(120, 220, 90, 23);

jTextField1.setEditable(false);
jTextField1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jTextField1ActionPerformed(evt);
}
});

getContentPane().add(jTextField1);
jTextField1.setBounds(80, 170, 170, 20);

jTextField2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jTextField2ActionPerformed(evt);
}
});

getContentPane().add(jTextField2);
jTextField2.setBounds(110, 120, 120, 20);

getContentPane().add(jTextField3);
jTextField3.setBounds(110, 270, 120, 20);

}

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
double j;
double g;
j = Double.parseDouble(jTextField2.getText());
if (g == j)

{
jTextField1.setText("Proficiat , u heeft goed gegokt");

}
else
if (g > j)
{
jTextField1.setText("te laag gegokt");
}
else
if (g < j)
{
jTextField1.setText("te hoog gegokt");
}
else
{
jTextField1.setText("Geef een getal in tussen 0 en 100");
}

}

private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:


}

private void jTextField2ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:

}

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:


Random ogen = new Random();
double g;
g = ((ogen.nextInt(100)) +1);
Double wrapg = new Double(g);
jTextField3.setText(wrapg.toString());




}


// Variables declaration - do not modify
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField2;
private javax.swing.JTextField jTextField3;
// End of variables declaration

}

.Acku.

Legacy Member
Code:
import java.util.Random;

public class Test extends javax.swing.JApplet {

	/** Initializes the applet getalgokker */
	public void init() {
		initComponents();

	}

	/**
	 * This method is called from within the init() method to initialize the
	 * form. WARNING: Do NOT modify this code. The content of this method is
	 * always regenerated by the Form Editor.
	 */
	private void initComponents() {
		jButton1 = new javax.swing.JButton();
		jButton2 = new javax.swing.JButton();
		jTextField1 = new javax.swing.JTextField();
		jTextField2 = new javax.swing.JTextField();
		jTextField3 = new javax.swing.JTextField();

		getContentPane().setLayout(null);

		jButton1.setText("Genereer een getal");
		jButton1.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent evt) {
				jButton1ActionPerformed(evt);
			}
		});

		getContentPane().add(jButton1);
		jButton1.setBounds(60, 40, 210, 50);

		jButton2.setText("Gokken");
		jButton2.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent evt) {
				jButton2ActionPerformed(evt);
			}
		});

		getContentPane().add(jButton2);
		jButton2.setBounds(120, 220, 90, 23);

		jTextField1.setEditable(false);
		jTextField1.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent evt) {
				jTextField1ActionPerformed(evt);
			}
		});

		getContentPane().add(jTextField1);
		jTextField1.setBounds(80, 170, 170, 20);

		jTextField2.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent evt) {
				jTextField2ActionPerformed(evt);
			}
		});

		getContentPane().add(jTextField2);
		jTextField2.setBounds(110, 120, 120, 20);

		getContentPane().add(jTextField3);
		jTextField3.setBounds(110, 270, 120, 20);

	}

	private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
		// TODO add your handling code here:
		double j = 0.0;
		double g = 0.0;
		j = Double.parseDouble(jTextField2.getText());
		if (g == j)

		{
			jTextField1.setText("Proficiat , u heeft goed gegokt");

		} else if (g > j) {
			jTextField1.setText("te laag gegokt");
		} else if (g < j) {
			jTextField1.setText("te hoog gegokt");
		} else {
			jTextField1.setText("Geef een getal in tussen 0 en 100");
		}

	}

	private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {
		// TODO add your handling code here:

	}

	private void jTextField2ActionPerformed(java.awt.event.ActionEvent evt) {
		// TODO add your handling code here:

	}

	private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
		// TODO add your handling code here:

		Random ogen = new Random();
		double g;
		g = ((ogen.nextInt(100)) + 1);
		Double wrapg = new Double(g);
		jTextField3.setText(wrapg.toString());

	}

	// Variables declaration - do not modify
	private javax.swing.JButton jButton1;

	private javax.swing.JButton jButton2;

	private javax.swing.JTextField jTextField1;

	private javax.swing.JTextField jTextField2;

	private javax.swing.JTextField jTextField3;
	// End of variables declaration

}

Het probleem zat hier:
double j = 0.0;
double g = 0.0;
lokale variabelen moeten steeds een initiele waarde meekrijgen.

stimpy13

Legacy Member
thx .Acku.
Nog een klein vraagske , als ik het run en ik genereer een getal , zegt hij mij 1 keer te hoog terwijl het te laag moet zijn en daarna kannek niet meer gokken ,moetek weer een getal genereren :s

killgore

Legacy Member
uw g zal met .Acku. zen oplossing in de 2 methoden 2x een verschillende variabele zijn ;). In je knophandler met andere woorden zal hij er altijd 0 van maken, dus bv.: als hij het met random in de ene methode op 80 zet, en jij typt 30 in, dan zal je knop toch zeggen dat je te groot bent, want in de methode waar je je knop-logica afhandelt zal g altijd 0 zijn ;).

Je moet van die g dus een klassevariabele maken en geen lokale methode-variabele ;).

killgore

Legacy Member
Dit dus:
Code:
import java.util.Random;

public class Test extends javax.swing.JApplet {
	/** Initializes the applet getalgokker */
	public void init() {
		initComponents();
                g=0;

	}

	/**
	 * This method is called from within the init() method to initialize the
	 * form. WARNING: Do NOT modify this code. The content of this method is
	 * always regenerated by the Form Editor.
	 */
	private void initComponents() {
		jButton1 = new javax.swing.JButton();
		jButton2 = new javax.swing.JButton();
		jTextField1 = new javax.swing.JTextField();
		jTextField2 = new javax.swing.JTextField();
		jTextField3 = new javax.swing.JTextField();

		getContentPane().setLayout(null);

		jButton1.setText("Genereer een getal");
		jButton1.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent evt) {
				jButton1ActionPerformed(evt);
			}
		});

		getContentPane().add(jButton1);
		jButton1.setBounds(60, 40, 210, 50);

		jButton2.setText("Gokken");
		jButton2.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent evt) {
				jButton2ActionPerformed(evt);
			}
		});

		getContentPane().add(jButton2);
		jButton2.setBounds(120, 220, 90, 23);

		jTextField1.setEditable(false);
		jTextField1.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent evt) {
				jTextField1ActionPerformed(evt);
			}
		});

		getContentPane().add(jTextField1);
		jTextField1.setBounds(80, 170, 170, 20);

		jTextField2.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent evt) {
				jTextField2ActionPerformed(evt);
			}
		});

		getContentPane().add(jTextField2);
		jTextField2.setBounds(110, 120, 120, 20);

		getContentPane().add(jTextField3);
		jTextField3.setBounds(110, 270, 120, 20);

	}

	private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
		// TODO add your handling code here:
		double j = 0.0;
		//double g = 0.0;
		j = Double.parseDouble(jTextField2.getText());
		if (g == j)

		{
			jTextField1.setText("Proficiat , u heeft goed gegokt");

		} else if (g > j) {
			jTextField1.setText("te laag gegokt");
		} else if (g < j) {
			jTextField1.setText("te hoog gegokt");
		} else {
			jTextField1.setText("Geef een getal in tussen 0 en 100");
		}

	}

	private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {
		// TODO add your handling code here:

	}

	private void jTextField2ActionPerformed(java.awt.event.ActionEvent evt) {
		// TODO add your handling code here:

	}

	private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
		// TODO add your handling code here:

		Random ogen = new Random();
		//double g;
		g = ((ogen.nextInt(100)) + 1);
		Double wrapg = new Double(g);
		jTextField3.setText(wrapg.toString());

	}

	// Variables declaration - do not modify
	private javax.swing.JButton jButton1;

	private javax.swing.JButton jButton2;

	private javax.swing.JTextField jTextField1;

	private javax.swing.JTextField jTextField2;

	private javax.swing.JTextField jTextField3;
	// End of variables declaration
        // My variables
        private double g;

}

normaal mag dit geen problemen geven ;).
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan