Probleme bei der Datenausgabe

dadon511

Mitglied
Hallo!

Ich habe folgendes Problemm: bei der Ausgabe (JLabel) kommen anstatt von Zahlen Zeichen wie minus bzw. plus Unendlich oder einfach Quadrate. Ich sitze seit drei Tagen an dem Problemm (muss dazu sagen, dass ich ein absoluter Anfänger bin), finde den Fehler aber nicht.

Im Moment soll nur die Eingabe durch die Datenfelder und das Berechnen funktionieren.

Code:
package gui;

/**
 *
 * 
 */
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.table.*;
import javax.swing.event.*;


public class GebundeneHochrechnung extends JFrame 
{
    SymAction symAction = new SymAction(this);
    
    GridBagConstraints gbc = new  GridBagConstraints();
    
    
    private String[] columnNamen = { "i", "Basismerkmal Xi", "Untersuchungsmerkmal Yi" };
    private String[][] daten = new String[30][3];
    private DefaultTableModel tableModel;
    
    JPanel panelGebundeneHochrechnung = new JPanel(new BorderLayout()); 
    
    JPanel panelDatenEingabe = new JPanel(new GridLayout(1,3,20,20));
    JPanel panelDatenEingabeLinks = new JPanel(new GridBagLayout());
    JPanel panelDatenEingabeMitte = new JPanel(new GridBagLayout());
    JPanel panelDaten = new JPanel(new GridBagLayout());
    JPanel panelDatenEingabeRechts = new JPanel(new GridBagLayout());
    JPanel panelErgebnisse = new JPanel(new GridBagLayout());
    
    JPanel panelButton1 = new JPanel(new FlowLayout(FlowLayout.CENTER, 5, 5));
    JPanel panelButton2 = new JPanel(new FlowLayout(FlowLayout.CENTER, 5, 5));
    JPanel panelButton3 = new JPanel(new FlowLayout(FlowLayout.CENTER, 5, 5));
    JPanel panelTabelleImportieren = new JPanel();
    JPanel panelDatenImportieren = new JPanel();
    
    JPanel panelEntnahmemodell = new JPanel(new GridLayout (2, 1));
    JPanel panelSchaetzungsart = new JPanel(new GridLayout (2, 1));
    JPanel panelSicherheitswahrscheinlichkeit = new JPanel(new FlowLayout());
    JPanel panelBerechnen = new JPanel(new FlowLayout(FlowLayout.CENTER));
   
    JLabel labelXquer = new JLabel ("Xquer");
    JLabel labelYquer = new JLabel ("Yquer");
    JLabel labelVarianzx = new JLabel ("Varianz x");
    JLabel labelVarianzy = new JLabel ("Varianz y");
    JLabel labelKovarianz = new JLabel ("Sxy");
    JLabel l1 = new JLabel(" ");
    JLabel labelUmfangN = new JLabel ("Umfang N");
    JLabel labelUmfangn = new JLabel ("Umfang n:");
    JLabel labelmueX = new JLabel ("\u03bcx:");
    JLabel labelDS = new JLabel("DIFFERENZENSCHÄTZUNG", SwingConstants.CENTER);
    JLabel labelVS = new JLabel("VERHÄLTNISSSÄTZUNG", SwingConstants.CENTER);
    JLabel labelLR = new JLabel("LINEARE  REGRESSION", SwingConstants.CENTER);
    JLabel labelDSp = new JLabel(".", SwingConstants.CENTER);
    JLabel labelVSi = new JLabel(".", SwingConstants.CENTER);
    JLabel labelLRp = new JLabel(".", SwingConstants.CENTER);
    JLabel labelDSi = new JLabel(".", SwingConstants.CENTER);
    JLabel labelVSp = new JLabel(".", SwingConstants.CENTER);
    JLabel labelLRi = new JLabel(".", SwingConstants.CENTER);
    JLabel labelWahrscheinlichkeit = new JLabel ("Wahrscheinlichkeit");
    JLabel p = new JLabel("%");
       
    
    JTextField xquer = new JTextField ();
    JTextField yquer = new JTextField ();
    JTextField varianzx = new JTextField ();
    JTextField varianzy = new JTextField ();
    JTextField kovarianz = new JTextField ();
    JTextField SummeQuadratY = new JTextField ();
    JTextField umfangN = new JTextField ();  
    JTextField umfangn = new JTextField ();
    JTextField mueX = new JTextField ();
    
    JButton tabelleImportieren = new JButton ("Tabelle importieren");
    JButton tabelleSpeichern = new JButton ("Tabelle speichern");
    JButton datenImportieren = new JButton ("Daten importieren");
    JButton datenSpeichern = new JButton ("Daten speichern");
    JButton berechnen = new JButton ("B E R E C H N E N");
    JButton ergebnisseSpeichern = new JButton ("Ergebnisse speichern");
    JButton neueBerechnung = new JButton ("Neue Berechnung");
    
    ButtonGroup bgEntnahmemodell = new ButtonGroup();
    ButtonGroup bgSicherheitswahrscheinlichkeit = new ButtonGroup();
    
    JRadioButton buttonZiehenMitZl = new JRadioButton ("Ziehen mit Zurücklegen", true);
    JRadioButton buttonZiehenOhneZl = new JRadioButton ("Ziehen ohne Zurücklegen");
    JRadioButton buttonPunktschaetzung = new JRadioButton ("Punktschätzung", true);
    JRadioButton buttonIntervalschaetzung = new JRadioButton ("Intervalschätzung", true);
    
    JComboBox boxWahrscheinlichkeit;
    JComboBox boxZwert;
     
    /** Creates new form GebundeneHochrechnung */
   public GebundeneHochrechnung() 
    {        
        this.panelGebundeneHochrechnung.add(panelDatenEingabe, BorderLayout.CENTER);
        this.panelGebundeneHochrechnung.add(panelErgebnisse, BorderLayout.SOUTH);
        this.panelDatenEingabe.setBorder
              (javax.swing.BorderFactory.createTitledBorder(null, "Dateneingabe", 
              javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, 
              javax.swing.border.TitledBorder.DEFAULT_POSITION, 
              new java.awt.Font("Tahoma", 0, 11), new java.awt.Color(0, 0, 0))); 
        this.panelErgebnisse.setBorder
              (javax.swing.BorderFactory.createTitledBorder(null, "Ergebnisse", 
              javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, 
              javax.swing.border.TitledBorder.DEFAULT_POSITION, 
              new java.awt.Font("Tahoma", 0, 11), new java.awt.Color(0, 0, 0)));
        
        
        this.gbc.insets = new Insets (5,5,5,5); 
               
        this.panelButton1.add(tabelleSpeichern);
        this.panelButton2.add(datenSpeichern);
              
        this.gbc.gridwidth = GridBagConstraints.REMAINDER;
        
        //verbleibenden Platz horizontal komplett nutzen
        this.gbc.weightx = 1;
        this.gbc.fill = GridBagConstraints.HORIZONTAL;
        
        this.panelTabelleImportieren.add(tabelleImportieren);
        this.panelDatenEingabeLinks.add(panelTabelleImportieren, gbc);
                
        this.gbc.weighty = 1;                    
        this.gbc.fill = GridBagConstraints.BOTH;
        
        tableModel = new DefaultTableModel(daten, columnNamen);
        JTable tabelle = new JTable (tableModel);
        //tabelle.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
        JScrollPane scroll = new JScrollPane(tabelle);
        tableModel.addTableModelListener(symAction);
        
        this.panelDatenEingabeLinks.add(scroll, gbc);
        
        this.gbc.weighty = 0;
        this.gbc.fill = GridBagConstraints.HORIZONTAL;
        
        this.panelDatenEingabeLinks.add(panelButton1, gbc);
        
        this.panelDatenEingabe.add(panelDatenEingabeLinks);
                
        //DatenEingabeMitte
       
        this.panelDatenImportieren.add(datenImportieren);
        this.panelDatenEingabeMitte.add(panelDatenImportieren, gbc);
        
        this.gbc.gridwidth = 1;
        this.gbc.weightx = 0;
        this.gbc.weighty = 1;
        this.gbc.fill = GridBagConstraints.HORIZONTAL;
                       
        this.panelDaten.add(labelUmfangN, gbc);
        
        this.gbc.weightx = 1; 
        this.gbc.gridwidth = GridBagConstraints.REMAINDER;
        
        this.panelDaten.add(umfangN, gbc);
        
        this.gbc.gridwidth = 1;
        this.gbc.weightx = 0; 
        
        this.panelDaten.add(labelUmfangn, gbc);
        
        this.gbc.weightx = 1; 
        this.gbc.gridwidth = GridBagConstraints.REMAINDER;
        
        this.panelDaten.add(umfangn, gbc);
        
        this.gbc.gridwidth = 1;
        this.gbc.weightx = 0; 
        
        this.panelDaten.add(labelmueX, gbc);
        
        this.gbc.weightx = 1; 
        this.gbc.gridwidth = GridBagConstraints.REMAINDER;
        this.panelDaten.add(mueX, gbc);
           
        this.gbc.gridwidth = 1;
        this.gbc.weightx = 0; 
        
        this.panelDaten.add(labelXquer, gbc);
        
        this.gbc.weightx = 1; 
        this.gbc.gridwidth = GridBagConstraints.REMAINDER;
        
        this.panelDaten.add(xquer, gbc);
        
        this.gbc.gridwidth = 1;
        this.gbc.weightx = 0; 
        
        this.panelDaten.add(labelYquer, gbc);
        
        this.gbc.weightx = 1; 
        this.gbc.gridwidth = GridBagConstraints.REMAINDER;
        
        this.panelDaten.add(yquer, gbc);
        
        this.gbc.gridwidth = 1;
        this.gbc.weightx = 0; 
        
        this.panelDaten.add(labelVarianzx, gbc);
        
        this.gbc.weightx = 1; 
        this.gbc.gridwidth = GridBagConstraints.REMAINDER;
        
        this.panelDaten.add(varianzx, gbc);
        
        this.gbc.gridwidth = 1;
        this.gbc.weightx = 0; 
        
        this.panelDaten.add(labelVarianzy, gbc);
        
        this.gbc.weightx = 1; 
        this.gbc.gridwidth = GridBagConstraints.REMAINDER;
        
        this.panelDaten.add(varianzy, gbc);
        
        this.gbc.gridwidth = 1;
        this.gbc.weightx = 0; 
        
        this.panelDaten.add(labelKovarianz, gbc);
        
        this.gbc.weightx = 1; 
        this.gbc.gridwidth = GridBagConstraints.REMAINDER;// letzte Komponente in der Zeile
        
        this.panelDaten.add(kovarianz, gbc);
        
        this.gbc.weighty = 1;                    
        this.gbc.fill = GridBagConstraints.BOTH;
        
        this.panelDatenEingabeMitte.add(panelDaten, gbc);
        
        this.gbc.weightx = 1; 
        this.gbc.weighty = 0;   
        this.gbc.gridwidth = GridBagConstraints.REMAINDER;
        
        this.panelDatenEingabeMitte.add(panelButton2, gbc);
                  
        this.panelDatenEingabe.add(panelDatenEingabeMitte);
                
        //Bedingungen
       
        this.panelEntnahmemodell.setBorder
              (javax.swing.BorderFactory.createTitledBorder(null, "Entnahmemodell", 
              javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, 
              javax.swing.border.TitledBorder.DEFAULT_POSITION, 
              new java.awt.Font("Tahoma", 0, 11), new java.awt.Color(0, 0, 0)));
        this.panelSchaetzungsart.setBorder
              (javax.swing.BorderFactory.createTitledBorder(null, "Schätzungsart", 
              javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, 
              javax.swing.border.TitledBorder.DEFAULT_POSITION, 
              new java.awt.Font("Tahoma", 0, 11), new java.awt.Color(0, 0, 0)));
        this.panelSicherheitswahrscheinlichkeit.setBorder
              (javax.swing.BorderFactory.createTitledBorder(null, "Sicherheitswahrscheinlichkeit", 
              javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, 
              javax.swing.border.TitledBorder.DEFAULT_POSITION, 
              new java.awt.Font("Tahoma", 0, 11), new java.awt.Color(0, 0, 0)));
              
        this.bgEntnahmemodell.add (buttonZiehenMitZl);
        this.bgEntnahmemodell.add (buttonZiehenOhneZl);
      
        this.panelEntnahmemodell.add (buttonZiehenMitZl);
        this.panelEntnahmemodell.add (buttonZiehenOhneZl);
        
        this.panelSicherheitswahrscheinlichkeit.add (labelWahrscheinlichkeit);
              
        Object[] dataW = {"95,00", "90,00", "80,00"};
        this.boxWahrscheinlichkeit = new JComboBox (dataW);
        this.boxWahrscheinlichkeit.setEditable(true);
        this.panelSicherheitswahrscheinlichkeit.add (boxWahrscheinlichkeit);
        this.panelSicherheitswahrscheinlichkeit.add (p);
                  
        this.panelSchaetzungsart.add(buttonPunktschaetzung);
        this.panelSchaetzungsart.add(buttonIntervalschaetzung);
               
        this.gbc.weightx = 1;                     
        this.gbc.weighty = 1;                    
        this.gbc.fill = GridBagConstraints.BOTH;
        
        this.panelDatenEingabeRechts.add(panelSchaetzungsart, gbc);
        this.panelDatenEingabeRechts.add(panelEntnahmemodell, gbc);
        this.panelDatenEingabeRechts.add(panelSicherheitswahrscheinlichkeit, gbc);
        
        this.gbc.weighty = 0;
        this.gbc.fill = GridBagConstraints.HORIZONTAL;
        
        this.panelBerechnen.add(berechnen);
        this.panelDatenEingabeRechts.add(panelBerechnen, gbc);
             
        this.panelDatenEingabe.add(panelDatenEingabeRechts);
                
        // Ergebnisse
        
        this.panelButton3.add(ergebnisseSpeichern);
        this.panelButton3.add(neueBerechnung);
        
        this.gbc.weightx = 1;                    
        this.gbc.fill = GridBagConstraints.HORIZONTAL;
        this.gbc.gridwidth = 1;
        
        this.panelErgebnisse.add(labelDS, gbc);
        this.panelErgebnisse.add(labelVS, gbc);
        
        this.gbc.gridwidth = GridBagConstraints.REMAINDER;
        
        this.panelErgebnisse.add(labelLR, gbc);
        
        this.gbc.gridwidth = 1;
        
        this.panelErgebnisse.add(labelDSp, gbc);
        this.panelErgebnisse.add(labelVSp, gbc);
        
        this.gbc.gridwidth = GridBagConstraints.REMAINDER;
        
        this.panelErgebnisse.add(labelLRp, gbc);
        
        this.gbc.gridwidth = 1;
        
        this.panelErgebnisse.add(labelDSi, gbc);
        this.panelErgebnisse.add(labelVSi, gbc);
        
        this.gbc.gridwidth = GridBagConstraints.REMAINDER;
        
        this.panelErgebnisse.add(labelLRi, gbc);
        
        this.gbc.weighty = 0;
                      
        this.panelErgebnisse.add(panelButton3, gbc);
                        
        this.tabelleImportieren.addActionListener (symAction);
        this.tabelleSpeichern.addActionListener (symAction);
        this.datenImportieren.addActionListener (symAction);
        this.datenSpeichern.addActionListener (symAction);
        this.berechnen.addActionListener (symAction);
   }
        
        
        public static void main(String[] args) 
      {
            JFrame fenster = new JFrame();
            GebundeneHochrechnung gh = new GebundeneHochrechnung();
            fenster.add(gh.panelGebundeneHochrechnung);
            fenster.setSize(1000, 700);
            fenster.setVisible( true ); 
 
      }
   
}

Code:
package gui;

/**
 *
 * 
 */
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.text.*;
import java.lang.*;
import javax.swing.event.*;

public class SymAction extends JFrame implements ActionListener, TableModelListener
        
{
    public GebundeneHochrechnung gh;
    public fachkonzept.Stichprobenverfahren fsv = new fachkonzept.Stichprobenverfahren();
    private boolean eingabe;
    
    private double xquer;
    private double yquer;
    private double varianzx;
    private double varianzy;
    private double kovarianz;
    private double mueX;
    private double wahrscheinlichkeit;
    private double zWert;
    private double mueYd;
    private double mueYv;
    private double mueYlr;
    
    private int umfangN;
    private int umfangn;
    
   
    DecimalFormat df = new DecimalFormat(" #,##0.0###");
    
    
    private double ugMitZlD;
    private double ogMitZlD;
    private double ugMitZlV;
    private double ogMitZlV;
    private double ugMitZlLR;
    private double ogMitZlLR;
    
    private double ugOhneZlD;
    private double ogOhneZlD;
    private double ugOhneZlV;
    private double ogOhneZlV;
    private double ugOhneZlLR;
    private double ogOhneZlLR;
        
      
    public SymAction()
    {
    
    }
       
    public SymAction(GebundeneHochrechnung gh) 
    {
        this.gh = gh;
        
    }
    
    public void actionPerformed (ActionEvent event)
    {
        Object object = event.getSource();
        
        
     if (object == gh.berechnen)
     {
            eingabe = false;
            einlesenDaten();       
     }
     
     if (object == gh.datenSpeichern)
     {
            speichereDaten();
     }
    }
    
    public void einlesenDaten()
    {   while (eingabe == false)
        {       
            if (gh.umfangN.getText().length()==0 || gh.umfangn.getText().length()== 0 || gh.mueX.getText().length()== 0)
            {   
                JOptionPane.showMessageDialog( gh.panelGebundeneHochrechnung, "Umfang N, Umfang n und  \u03bcx sind Pflichtfelder/",
                                                                                            null, JOptionPane.ERROR_MESSAGE, null );
                break;    
            } 
        
            else
            {        
                try
                {
                    int umfangN = Integer.parseInt(gh.umfangN.getText());
                    int umfangn = Integer.parseInt(gh.umfangN.getText());            
                }
                catch(NumberFormatException error)
                {
                    JOptionPane.showMessageDialog( gh.panelGebundeneHochrechnung, "N und n müssen ganze Zahlen sein!", 
                                                                                                null, JOptionPane.ERROR_MESSAGE, null );
                    break;
                }
        
                 try
                {
        
                    mueX = Double.parseDouble(gh.mueX.getText().replace(',','.'));
                }
        
                catch(NumberFormatException error)
                {
                    JOptionPane.showMessageDialog( gh.panelGebundeneHochrechnung, "Bei der Dateneingabe bitte nur Zahlen eingeben!",
                                                                                            null, JOptionPane.ERROR_MESSAGE, null );
                     break;

                }
        
            }
        
        
      
            
            if(gh.xquer.getText().length()==0 || gh.yquer.getText().length()== 0 || gh.varianzx.getText().length()== 0 || 
                                                            gh.varianzy.getText().length()==0 || gh.kovarianz.getText().length()== 0)                                                             
            {    
                JOptionPane.showMessageDialog( gh.panelGebundeneHochrechnung, "Bitte alle Datenfelder ausfühlen!", 
                                                                                            null, JOptionPane.ERROR_MESSAGE, null );
                 break;
            }
            
            else
            {
                try
                {            
                    xquer = Double.parseDouble(gh.xquer.getText().replace(',','.'));
                    yquer = Double.parseDouble(gh.yquer.getText().replace(',','.'));
                    varianzx = Double.parseDouble(gh.varianzx.getText().replace(',','.'));
                    varianzy = Double.parseDouble(gh.varianzy.getText().replace(',','.'));
                    kovarianz = Double.parseDouble(gh.kovarianz.getText().replace(',','.'));            
                }
            
                catch(NumberFormatException error)
                {
                    JOptionPane.showMessageDialog( gh.panelGebundeneHochrechnung, "Bei der Dateneingabe bitte nur Zahlen eingeben!", 
                                                                                            null, JOptionPane.ERROR_MESSAGE, null );
                    break;
                }
            }
            
      
            if (gh.buttonPunktschaetzung.isSelected() == false & gh.buttonIntervalschaetzung.isSelected() == false)
            {                  
                JOptionPane.showMessageDialog( gh.panelGebundeneHochrechnung,
                "Bitte wenigstens eine Schätzungsart auswählen!", null, JOptionPane.ERROR_MESSAGE, null );
                break;
            }
            
            else
            {            
                try
                {
                    wahrscheinlichkeit = Double.parseDouble(gh.boxWahrscheinlichkeit.getSelectedItem().toString().replace(',','.'));
                }
                
                catch(NumberFormatException error)
                {
                    JOptionPane.showMessageDialog( gh.panelGebundeneHochrechnung, "Bei Wahrscheinlichkeitsangabe bitte nur Zahlen eingeben!",
                            null, JOptionPane.ERROR_MESSAGE, null );
                    break;
                }
            
                eingabe = true;
                            
                fsv.setDaten(umfangN, umfangn, mueX, xquer, yquer, varianzx, varianzy, kovarianz, wahrscheinlichkeit);
            
           if(gh.buttonPunktschaetzung.isSelected())
           {    
                mueYd = fsv.berechneMueYd();
                mueYv = fsv.berechneMueYv();
                mueYlr = fsv.berechneMueYlr();
                ausgebeMueY();
           }
            
           if(gh.buttonIntervalschaetzung.isSelected())
           {
                if(gh.buttonZiehenMitZl.isSelected())
                {
                    ugMitZlD = fsv.berechneUgMitZlD();
                    ogMitZlD = fsv.berechneOgMitZlD();
                    ugMitZlV = fsv.berechneUgMitZlV();
                    ogMitZlV = fsv.berechneOgMitZlV();
                    ugMitZlLR = fsv.berechneUgMitZlLR();
                    ogMitZlLR = fsv.berechneOgMitZlLR();
                    ausgebeIntervalMitZL();
                }
                
                if(gh.buttonZiehenOhneZl.isSelected())
                {
                    ugOhneZlD = fsv.berechneUgOhneZlD();
                    ogOhneZlD = fsv.berechneOgOhneZlD();
                    ugOhneZlV = fsv.berechneUgOhneZlV();
                    ogOhneZlV = fsv.berechneOgOhneZlV();
                    ugOhneZlLR = fsv.berechneUgOhneZlLR();
                    ogOhneZlLR = fsv.berechneOgOhneZlLR();
                    ausgebeIntervalOhneZL();
                }
            }
        }
    }
    
    }
        

    
    public void ausgebeMueY ()
    {       
       gh.labelDSp.setText("\u03bcy = " + df.format(mueYd));
       gh.labelVSp.setText("\u03bcy = " + df.format(mueYv));
       gh.labelLRp.setText("\u03bcy = " + df.format(mueYlr));
    }
    
    
    public void ausgebeIntervalMitZL()
    {       
        gh.labelDSi.setText(df.format(ugMitZlD)+" <= \u03bcy <= " + df.format(ogMitZlD));
        gh.labelVSi.setText(df.format(ugMitZlV)+" <= \u03bcy <= " + df.format(ogMitZlV));
        gh.labelLRi.setText(df.format(ugMitZlLR)+" <= \u03bcy <= " + df.format(ogMitZlLR));
    }
    
    public void ausgebeIntervalOhneZL()
    {                
        gh.labelDSi.setText(df.format(ugOhneZlD)+" <= \u03bcy <= " + df.format(ogOhneZlD));
        gh.labelVSi.setText(df.format(ugOhneZlV)+" <= \u03bcy <= " + df.format(ogOhneZlV));
        gh.labelLRi.setText(df.format(ugOhneZlLR)+" <= \u03bcy <= " + df.format(ogOhneZlLR));
                
    }
    
    public void tableChanged (TableModelEvent e)
    {
        
    }
    
    
    public void speichereDaten()
    {
        String[] daten = {gh.umfangN.getText(), gh.umfangn.getText(), gh.mueX.getText(), gh.xquer.getText(),
                 gh.yquer.getText(), gh.varianzx.getText(), gh.varianzy.getText(), gh.kovarianz.getText()};
    }
}

Code:
package fachkonzept;

/**
 *
 * 
 */
public class Stichprobenverfahren 
{
    private double fUmfangN;
    private double fUmfangn;
    private double fMueX;
    private double fXquer;
    private double fYquer;
    private double fVarianzx;
    private double fVarianzy;
    private double fKovarianz;
    private double fWahrscheinlichkeit;
    public double aD;
    private double aV;
    private double aLR;
    private double mueYd;
    private double mueYv;
    private double mueYlr;
    private double zWert;
    private double mueY;
    
    /** Creates a new instance of Stichprobenverfahren */
    public Stichprobenverfahren() 
    {
    }
      
    public void setDaten (int umfangN, int umfangn, double mueX, double xquer, double yquer, double varianzx, 
                                 double varianzy, double kovarianz, double wahrscheinlichkeit)
    {
        fUmfangN = (double)umfangN;
        fUmfangn = (double)umfangn;
        fMueX = mueX;
        fXquer = xquer;
        fYquer = yquer;
        fVarianzx = varianzx;
        fVarianzy = varianzy;
        fKovarianz = kovarianz;
        aD = 1;
        aV = fYquer/fXquer;
        aLR = fKovarianz/fVarianzx;
        fWahrscheinlichkeit = wahrscheinlichkeit;
        zWert = 2;
    }
    
    public double berechneMueYd()
    {        
        mueYd = berechneMueY(aD);
        return mueYd;
    }
    
    public double berechneMueYv()
    {        
        mueYv = berechneMueY(aV);
        return mueYv;
    }
    
    public double berechneMueYlr()
    {        
        mueYlr = berechneMueY(aLR);
        return mueYlr;
    }
    
    public double berechneUgMitZlD()
    {
       aD = 1;
       double varYmitZlD = berechneVarianzYmitZl(aD);
       double eMitZlD = zWert * Math.sqrt(Math.abs(varYmitZlD));
       double ugMitZlD = (mueYd-eMitZlD);
       return ugMitZlD;
    }
    
    public double berechneOgMitZlD()
    {
       double varYmitZlD = berechneVarianzYmitZl(aD);
       double eMitZlD = zWert * Math.sqrt(Math.abs(varYmitZlD));
       double ogMitZlD = (mueYd+eMitZlD);
       return ogMitZlD;
    }
    
    public double berechneUgMitZlV()
    {
       double varYmitZlV = berechneVarianzYmitZl(aV);
       double eMitZlV = zWert * Math.sqrt(Math.abs(varYmitZlV));
       double ugMitZlV = (mueYv-eMitZlV);
       return ugMitZlV;
    }
    
    public double berechneOgMitZlV()
    {
       double varYmitZlV = berechneVarianzYmitZl(aV);
       double eMitZlV = zWert * Math.sqrt(Math.abs(varYmitZlV));
       double ogMitZlV = (mueYv+eMitZlV);
       return ogMitZlV;
    }
    
    public double berechneUgMitZlLR()
    {
       double varYmitZlLR = berechneVarianzYmitZl(aLR);
       double eMitZlLR = zWert * Math.sqrt(Math.abs(varYmitZlLR));
       double ugMitZlLR = (mueYlr-eMitZlLR);
       return ugMitZlLR;
    }
    
    public double berechneOgMitZlLR()
    {
       double varYmitZlLR = berechneVarianzYmitZl(aLR);
       double eOhneZlLR = zWert * Math.sqrt(Math.abs(varYmitZlLR));
       double ogOhneZlLR = (mueYlr+eOhneZlLR);
       return ogOhneZlLR;
    }
    
    public double berechneUgOhneZlD()
    {
       double varYohneZlD = berechneVarianzYohneZl(aD);
       double eOhneZlD = zWert * Math.sqrt(Math.abs(varYohneZlD));
       double ugOhneZlD = (mueYd-eOhneZlD);
       return ugOhneZlD;
    }
    
    public double berechneOgOhneZlD()
    {
       double varYohneZlD = berechneVarianzYohneZl(aD);
       double eOhneZlD = zWert * Math.sqrt(Math.abs(varYohneZlD));
       double ogOhneZlD = (mueYd+eOhneZlD);
       return ogOhneZlD;
    }
    
    public double berechneUgOhneZlV()
    {
       double varYohneZlV = berechneVarianzYohneZl(aV);
       double eOhneZlV = zWert * Math.sqrt(Math.abs(varYohneZlV));
       double ugOhneZlV = (mueYv-eOhneZlV);
       return ugOhneZlV;
    }
    
    public double berechneOgOhneZlV()
    {
       double varYohneZlV = berechneVarianzYohneZl(aV);
       double eOhneZlV = zWert * Math.sqrt(Math.abs(varYohneZlV));
       double ogOhneZlV = (mueYv+eOhneZlV);
       return ogOhneZlV;
    }
    
    public double berechneUgOhneZlLR()
    {
       double varYohneZlLR = berechneVarianzYohneZl(aLR);
       double eOhneZlLR = zWert * Math.sqrt(Math.abs(varYohneZlLR));
       double ugOhneZlLR = (mueYlr-eOhneZlLR);
       return ugOhneZlLR;
    }
    
    public double berechneOgOhneZlLR()
    {
       double varYohneZlLR = berechneVarianzYohneZl(aLR);
       double eOhneZlLR = zWert * Math.sqrt(Math.abs(varYohneZlLR));
       double ogOhneZlLR = (mueYlr+eOhneZlLR);
       return ogOhneZlLR;
    }
    
    
    
    //Schätzwert für das unbekannte arithmetische Mittel der Grundgesamtheit des Untersuchungsmerkmals Y
    public double berechneMueY (double a)
    {
        mueY = fYquer + (a * (fMueX - fXquer));
        return mueY;
    }
    
   //Schätzfunktion für die unbekante Varianz der Schätzfunktion MueY. Entnahmemodell mit Zurücklegen.
    public double berechneVarianzYmitZl(double a)
            
    {
        double varianzYmitZl = (1.0/fUmfangn)*(fVarianzy-(2*a*fKovarianz)+(a*a*fVarianzx));
        return varianzYmitZl;
    }
        
    //Schätzfunktion für die unbekante Varianz der Schätzfunktion MueY. Entnahmemodell ohne Zurücklegen
    public double berechneVarianzYohneZl(double a)
    {
        double varianzYohneZl = ((1/fUmfangn) - (1/fUmfangN))*(fVarianzy-(2*a*fKovarianz)+(a*a*fVarianzx));
        return varianzYohneZl;
    }
     
    
    public double getZwert(double x)
    {
        double n, t, z;
       
        if( x < 0.5 || x >= 1)
        {
            return 0;
        }
        else
        {
            t = java.lang.Math.sqrt(-2.0 * java.lang.Math.log(1.0 - x));
            z = 2.515517 + t * (0.802853 + 0.010328 * t);
            n = 1.0 + t * (1.432788 + t * (0.189269 + 0.001308 * t));
            z = t - z / n;
            return z;
        }
    }
}

Ich hoffe, dass jemand von euch Zeit findet, um sich mit meinem Problem zu beschäftigen.
Ich bin für jede Hilfe sehr dankbar.
 
Hallo noch mal!

Habe den Fehler immer noch nicht gefunden, weiß aber mitlerweile, dass der irgendwo im folgendem Ausschnitt der Klasse SymAction ist:
Code:
public SymAction(GebundeneHochrechnung gh) 
    {
        this.gh = gh;
        
    }
    
    public void actionPerformed (ActionEvent event)
    {
        Object object = event.getSource();
        
        
     if (object == gh.berechnen)
     {
           eingabe = false;
           einlesenDaten();       
     }
     
     if (object == gh.datenSpeichern)
     {
          speichereDaten();
     }
        
     if (object == gh.datenImportieren)
     {
        importiereDaten();
     }
        
     if (object == gh.neueBerechnung)
     {
        entferneAngaben();
     }
         
    }
    
    public void einlesenDaten()
    {   while (eingabe == false)
        {       
            if (gh.umfangN.getText().length()==0 || gh.umfangn.getText().length()== 0 || gh.mueX.getText().length()== 0)
            {   
                JOptionPane.showMessageDialog( gh.panelGebundeneHochrechnung, "Umfang N, Umfang n und  \u03bcx sind Pflichtfelder/",
                                                                                            null, JOptionPane.ERROR_MESSAGE, null );
                break;    
            } 
        
            else
            {        
                try
                {
                    int umfangN = Integer.parseInt(gh.umfangN.getText());
                    int umfangn = Integer.parseInt(gh.umfangN.getText());            
                }
                catch(NumberFormatException error)
                {
                    JOptionPane.showMessageDialog( gh.panelGebundeneHochrechnung, "N und n müssen ganze Zahlen sein!", 
                                                                                                null, JOptionPane.ERROR_MESSAGE, null );
                    break;
                }
        
                 try
                {
        
                    mueX = Double.parseDouble(gh.mueX.getText().replace(',','.'));
                }
        
                catch(NumberFormatException error)
                {
                    JOptionPane.showMessageDialog( gh.panelGebundeneHochrechnung, "Bei der Dateneingabe bitte nur Zahlen eingeben!",
                                                                                            null, JOptionPane.ERROR_MESSAGE, null );
                     break;

                }
        
            }
        
        
      
            
            if(gh.xquer.getText().length()==0 || gh.yquer.getText().length()== 0 || gh.varianzx.getText().length()== 0 || 
                                                            gh.varianzy.getText().length()==0 || gh.kovarianz.getText().length()== 0)                                                             
            {    
                JOptionPane.showMessageDialog( gh.panelGebundeneHochrechnung, "Bitte alle Datenfelder ausfühlen!", 
                                                                                            null, JOptionPane.ERROR_MESSAGE, null );
                 break;
            }
            
            else
            {
                try
                {            
                    xquer = Double.parseDouble(gh.xquer.getText().replace(',','.'));
                    yquer = Double.parseDouble(gh.yquer.getText().replace(',','.'));
                    varianzx = Double.parseDouble(gh.varianzx.getText().replace(',','.'));
                    varianzy = Double.parseDouble(gh.varianzy.getText().replace(',','.'));
                    kovarianz = Double.parseDouble(gh.kovarianz.getText().replace(',','.'));            
                }
            
                catch(NumberFormatException error)
                {
                    JOptionPane.showMessageDialog( gh.panelGebundeneHochrechnung, "Bei der Dateneingabe bitte nur Zahlen eingeben!", 
                                                                                            null, JOptionPane.ERROR_MESSAGE, null );
                    break;
                }
            }
            
      
            if (gh.buttonPunktschaetzung.isSelected() == false & gh.buttonIntervalschaetzung.isSelected() == false)
            {                  
                JOptionPane.showMessageDialog( gh.panelGebundeneHochrechnung,
                "Bitte wenigstens eine Schätzungsart auswählen!", null, JOptionPane.ERROR_MESSAGE, null );
                break;
            }
            
            else
            {            
                try
                {
                    wahrscheinlichkeit = Double.parseDouble(gh.boxWahrscheinlichkeit.getSelectedItem().toString().replace(',','.'));
                }
                
                catch(NumberFormatException error)
                {
                    JOptionPane.showMessageDialog( gh.panelGebundeneHochrechnung, "Bei Wahrscheinlichkeitsangabe bitte nur Zahlen eingeben!",
                            null, JOptionPane.ERROR_MESSAGE, null );
                    break;
                }
            
                eingabe = true;

Könnte bitte jemand einen Blick drauf werfen? Ich bin langsam echt am verzweifeln.

Bin für jede Idee dankbar.
 
Zurück