if - else Abfrage beenden

Allgemeine Java-Themen: if - else Abfrage beenden

Allgemeine Themen, die nicht in andere Fachforen und nicht zu den Java Basics passen
  1. if - else Abfrage beenden #1
    marcoK


    if - else Abfrage beenden - Standard if - else Abfrage beenden
    Hallo, und zwar ich habe eine abfrage, bei der der if-Zweig funktioniert nur beim else hänge ich, hier der Code:

    Java Code:
    1. } else {
    2. nichtvorhandeneArtikel.put(artikelnummer, artikel);
    3.  
    4. JDialogArtikelNichtVorhanden dialog = new JDialogArtikelNichtVorhanden(null, true);
    5. dialog.setText(artikelnummer);
    6. dialog.fuelleListe(nichtvorhandeneArtikel);
    7. }


    nun zum Problem.
    und zwar es läuft eine Schleife herum, die erst alle Artikel in die "nichtvorhandeneArtikel" speichern soll und dann am ende der schleife erst den Dialog ausführt??

    Aber nur beim else Zweig, beim if nicht!!

    hoffe ihr könnt mir helfen!?

  2. if - else Abfrage beenden #2
    javimka


    was genau steht denn in der If-Klausel und wie sieht deine Schleife aus?

  3. if - else Abfrage beenden #3
    Unregistriert

    Java Code:
    1. static private artikelHashtable ueberpruefeArtikelExcelZurichtung(String kundennummer, HSSFWorkbook wbDBZur07) {
    2. Vector<Artikel> v = alleKunden.get(kundennummer).gekaufteArtikelZurichtung;
    3. Hashtable alleArtikelExcel = artikelExcelZurichtung(wbDBZur07);
    4.  
    5. Hashtable vorhandeneArtikel = new Hashtable();
    6. Hashtable nichtvorhandeneArtikel = new Hashtable();
    7. Enumeration el = v.elements();
    8.  
    9. while (el.hasMoreElements()) {
    10. Artikel artikel = (Artikel) el.nextElement();
    11. String artikelnummer = artikel.getArtikelnummer();
    12.  
    13. if (alleArtikelExcel.containsKey(artikelnummer)) {
    14. HSSFSheet sheetKostenLS = wbDBZur07.getSheet("Kosten LS");
    15. HSSFSheet sheetKostenFM = wbDBZur07.getSheet("Kosten FM");
    16. HSSFSheet sheetKostenZU = wbDBZur07.getSheet("Kosten ZU");
    17.  
    18. if (sheetKostenLS == null) {
    19. System.out.println("Sheet in der Exceldatei nicht vorhanden!");
    20. System.exit(0);
    21. } else {
    22. for (int i = 2; i != sheetKostenLS.getLastRowNum(); i++) {
    23. HSSFRow rowKostenLS = sheetKostenLS.getRow(i);
    24. HSSFRow rowKostenFM = sheetKostenFM.getRow(i);
    25. HSSFRow rowKostenZU = sheetKostenZU.getRow(i);
    26.  
    27. if (rowKostenLS != null) {
    28. HSSFCell cellKostenLS = rowKostenLS.getCell((int) 5);
    29. if (cellKostenLS != null) {
    30. if (cellKostenLS.getCellType() != HSSFCell.CELL_TYPE_FORMULA) {
    31. String type = "";
    32. type = (cellKostenLS.getCellType() == HSSFCell.CELL_TYPE_BLANK) ? "CELL_TYPE_BLANK" : type;
    33. type = (cellKostenLS.getCellType() == HSSFCell.CELL_TYPE_BOOLEAN) ? "CELL_TYPE_BOOLEAN" : type;
    34. type = (cellKostenLS.getCellType() == HSSFCell.CELL_TYPE_ERROR) ? "CELL_TYPE_ERROR" : type;
    35. type = (cellKostenLS.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) ? "CELL_TYPE_NUMERIC" : type;
    36. type = (cellKostenLS.getCellType() == HSSFCell.CELL_TYPE_STRING) ? "CELL_TYPE_STRING" : type;
    37. setFehlermeldungDatentyp(type);
    38. System.exit(0);
    39. } else {
    40. HSSFRichTextString artikelnum = cellKostenLS.getRichStringCellValue();
    41. if (artikel.getArtikelnummer().equals(artikelnum.toString())) {
    42. //Informationen zum Artikel
    43. artikel.setRezept((int) rowKostenLS.getCell((int) 3).getNumericCellValue());
    44. artikel.setTraeger((int) rowKostenLS.getCell((int) 4).getNumericCellValue());
    45. artikel.setPreisgruppe(rowKostenLS.getCell((int) 1).getRichStringCellValue().toString());
    46. artikel.setIdentifikation(rowKostenLS.getCell((int) 2).getRichStringCellValue().toString());
    47. artikel.setStaerke(rowKostenLS.getCell((int) 0).getRichStringCellValue().toString().substring(4, 7));
    48. double ausschussRW = rowKostenLS.getCell((int) 9).getNumericCellValue();
    49. BigDecimal ausschussRohware = BigDecimal.valueOf(ausschussRW);
    50. artikel.setAusschussRohware(ausschussRohware);
    51. double ausschussZU = rowKostenLS.getCell((int) 8).getNumericCellValue();
    52. BigDecimal ausschussZurichtung = BigDecimal.valueOf(ausschussZU);
    53. artikel.setAusschussZurichtung(ausschussZurichtung);
    54. //Kosten LS
    55. double latexkg = rowKostenLS.getCell((int) 10).getNumericCellValue();
    56. BigDecimal latex = BigDecimal.valueOf(latexkg);
    57. artikel.setLatexkg(latex);
    58. double fmlskg = rowKostenLS.getCell((int) 11).getNumericCellValue();
    59. BigDecimal fmls = BigDecimal.valueOf(fmlskg);
    60. artikel.setFertigungsmaterialLSkg(fmls);
    61. double gaskg = rowKostenLS.getCell((int) 12).getNumericCellValue();
    62. BigDecimal gas = BigDecimal.valueOf(gaskg);
    63. artikel.setGasLSkg(gas);
    64. double stromkg = rowKostenLS.getCell((int) 13).getNumericCellValue();
    65. BigDecimal strom = BigDecimal.valueOf(stromkg);
    66. artikel.setStromLSkg(strom);
    67. double instandhaltungkg = rowKostenLS.getCell((int) 14).getNumericCellValue();
    68. BigDecimal instandhaltung = BigDecimal.valueOf(instandhaltungkg);
    69. artikel.setInstandhaltungLSkg(instandhaltung);
    70. double personalkostenkg = rowKostenLS.getCell((int) 15).getNumericCellValue();
    71. BigDecimal personalkosten = BigDecimal.valueOf(personalkostenkg);
    72. artikel.setPersonalkostenLSkg(personalkosten);
    73. double fklskg = rowKostenLS.getCell((int) 16).getNumericCellValue();
    74. BigDecimal fkls = BigDecimal.valueOf(fklskg);
    75. artikel.setFKLSkg(fkls);
    76.  
    77. //Kosten FM
    78. double satinierenkg = rowKostenFM.getCell((int) 9).getNumericCellValue();
    79. BigDecimal satinieren = BigDecimal.valueOf(satinierenkg);
    80. artikel.setSatinierenkg(satinieren);
    81. double glasenkg = rowKostenFM.getCell((int) 10).getNumericCellValue();
    82. BigDecimal glasen = BigDecimal.valueOf(glasenkg);
    83. artikel.setGlasenkg(glasen);
    84. double stollenkg = rowKostenFM.getCell((int) 11).getNumericCellValue();
    85. BigDecimal stollen = BigDecimal.valueOf(stollenkg);
    86. artikel.setStollenkg(stollen);
    87. double konfektionierenkg = rowKostenFM.getCell((int) 12).getNumericCellValue();
    88. BigDecimal konfektionieren = BigDecimal.valueOf(konfektionierenkg);
    89. artikel.setKonfektionierenkg(konfektionieren);
    90.  
    91. //Kosten ZU
    92. double praegenqm = rowKostenZU.getCell((int) 7).getNumericCellValue();
    93. BigDecimal praegen = BigDecimal.valueOf(praegenqm);
    94. artikel.setPraegenqm(praegen);
    95. double beschichtenqm = rowKostenZU.getCell((int) 8).getNumericCellValue();
    96. BigDecimal beschichten = BigDecimal.valueOf(beschichtenqm);
    97. artikel.setBeschichtenqm(beschichten);
    98. double druckenLackierenqm = rowKostenZU.getCell((int) 9).getNumericCellValue();
    99. BigDecimal druckenLackieren = BigDecimal.valueOf(druckenLackierenqm);
    100. artikel.setDruckenLackierenqm(druckenLackieren);
    101. double fmzuqm = rowKostenZU.getCell((int) 11).getNumericCellValue();
    102. BigDecimal fmzu = BigDecimal.valueOf(fmzuqm);
    103. artikel.setFertigungsmaterialZUqm(fmzu);
    104. BigDecimal vtvw = new BigDecimal(15.6962339282625);
    105. BigDecimal qs = new BigDecimal(1.17751640665183);
    106. artikel.setVertriebVerwaltungProzent(vtvw);
    107. artikel.setQsEntwicklungProzent(qs);
    108. break;
    109. }
    110. }
    111. }
    112. }
    113. }
    114. }
    115.  
    116. vorhandeneArtikel.put(artikelnummer, artikel);
    117.  
    118. } else {
    119. nichtvorhandeneArtikel.put(artikelnummer, artikel);
    120.  
    121. JDialogArtikelNichtVorhanden dialog = new JDialogArtikelNichtVorhanden(null, true);
    122. dialog.setText(artikelnummer);
    123. dialog.fuelleListe(nichtvorhandeneArtikel);
    124.  
    125. }
    126.  
    127. }
    128. artikelHashtable ah = new artikelHashtable(vorhandeneArtikel, nichtvorhandeneArtikel);
    129.  
    130. return ah;
    131. }

  4. if - else Abfrage beenden #4
    javimka


    Ja wunderschön!
    Also ich tippe darauf, dass deine If-Klausel einfach bei jedem Durchgang true ergibt. So wird der else Teil natürlich nie ausgeführt. Du kannst ja einmal System.out.println("huhu, ich bin im else-Zweig") in den else-Zweig schreiben und testen, ob das Programm überhaupt jemals dahin kommt.
    Möglicherweise wird auch eine Exception ausgelöst, die du irgendwo abfängst, aber nicht ausgibst. Wird diese methode denn ganz sicher bis zum Ende ausgeführt?

  5. if - else Abfrage beenden #5
    JohannisderKaeufer

    Java Code:
    1. else {
    2. nichtvorhandeneArtikel.put(artikelnummer, artikel);
    3. }//else beenden
    4. }//schleife beenden
    5. //Dialog anzeigen
    6. JDialogArtikelNichtVorhanden dialog = new JDialogArtikelNichtVorhanden(null, true);
    7. dialog.setText(artikelnummer);
    8. dialog.fuelleListe(nichtvorhandeneArtikel);

  • Javavideokurs
    Videokurs
    Dein Weg zum Java-Profi!
    25 Stunden geballtes Java Know-How.

    Videokurs

  • Ähnliche Themen zu if - else Abfrage beenden
    1. Programm beenden über menueItem "Beenden"!
      Von MX76 im Forum Java Basics - Anfänger-Themen
      Antworten: 5
      Letzter Beitrag: 26.08.2012, 21:54
    2. Applet beenden
      Von delphiking1980 im Forum Java Basics - Anfänger-Themen
      Antworten: 7
      Letzter Beitrag: 05.06.2012, 09:50
    3. Faden beenden
      Von Gast im Forum Allgemeine Java-Themen
      Antworten: 7
      Letzter Beitrag: 04.09.2008, 13:11
    4. Externes Programm beenden mit eigenem Programm beenden
      Von w00t im Forum Allgemeine Java-Themen
      Antworten: 7
      Letzter Beitrag: 04.09.2006, 13:53
    5. Beenden-Dialog mit "Beenden" und "Abbrechen&q
      Von Novanic im Forum AWT, Swing, JavaFX & SWT
      Antworten: 2
      Letzter Beitrag: 16.05.2006, 19:50
    Sie betrachten gerade if - else Abfrage beenden