Java: if(a in b)

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Java: if(a in b)

    ...Noch eine andere Frage und zwar habe ich in einem Array Zahlen des Types double stehen und jetzt würde ich gerne Abfragen ob meine "eingelesene Zahl" darein fällt bzw. nicht da drin ist.

    Diese Bereichsprüfungen von wegen if ( a is in b) gibt es leider nicht, in meiner Literatur hab ich auch noch nichts hilfreiches gefunden?

    Oder muss ich das mit einer for schleife realisieren, die dann bis zu der Länge des Arrays läuft?
  • Was für eine IDE benutzt du denn? Java kann doch Autoboxing und genau deswegen funktioniert das auch :)
    Ansonsten versuchs mit al.contains(new Double(5.0)).

    Und wenn das nicht klappt, dann nenn mir mal deine Java Version. Soweit ich weiß wurden Generics und Autoboxing aber gleichzeitig in Version 5 eingeführt. Wenn eins klappt, klappt also auch das andere.
  • Moin,

    geh mal auf Start -> Ausführen -> gib dort "cmd" (ohne anführungsstriche) ein. Gib dann in der Eingabeaufforderung java -version ein und schreib das was dort steht bitte mal hier rein.
    Sollte dort sowas wie java version "1.6.0_02" oder so stehen geh bitte in dein eclipse und klick auf:
    Window -> Preferences -> Java -> Installed JREs und schau ob dort die richtige jre ausgewählt ist.

    Danach Poste deine Ergebnise und du hast d0nut's wünsche vermutlich erfüllt ;)
  • Also für ne ArrayList brauchst du kein Update auf 1.6 machen.
    Nur weiß ich jetzt leider nicht woran es sonst noch liegen kann.

    Sag uns mal den Wortlaut der originalen Meldung damit man wenigstens Googlen kann.
    Und teste mal diesen, oder poste deinen gesamten Code:

    Quellcode

    1. import java.util.ArrayList;
    2. public class EasyCoding4311 {
    3. public static void main (String args[]) {
    4. ArrayList<Double> al = new ArrayList<Double>();
    5. al.add(5.0);
    6. if(al.contains(5.0))
    7. System.out.println("5 ja");
    8. else
    9. System.out.println("5 nein");
    10. }
    11. }
    Alles anzeigen
  • Ich kann nicht mehr.... Auf einmal funktionierts, scheint wohl wirklich an der jre-Version zu liegen.
    Danke trotzdem.

    Hier mal der Quelltext:

    Quellcode

    1. import java.io.*;
    2. import java.util.*;
    3. public class main {
    4. /**
    5. * @param args
    6. */
    7. public static void main(String[] args) {
    8. // TODO Auto-generated method stub
    9. // Varibalen
    10. int i;
    11. int j;
    12. int length;
    13. int count;
    14. double produkte;
    15. double komma_pruef;
    16. double zahlen[] = {1.99,4.13,6.64,8.98,9.91,1.99};
    17. double produkt[]= new double[zahlen.length];
    18. ArrayList<Double> used = new ArrayList<Double>();
    19. // Willkommens Meldung
    20. System.out.println("Willkommen bei der Praemienjagd");
    21. //Initialisieren und L‰ngen zuweisen
    22. length = zahlen.length;
    23. count = 0;
    24. // Verarbeitung liefert noch nicht ganz die optimale Lˆsung
    25. // Ausschlus und Tausch fehlt noch
    26. for ( i = 0; i < length; i++)
    27. {
    28. for ( j = i + 1; j < length; j++)
    29. {
    30. produkte = zahlen[i] + zahlen[j];
    31. komma_pruef = (produkte * 100.00 ) % 100;
    32. if (komma_pruef == 11 || komma_pruef == 33 || komma_pruef == 55 || komma_pruef == 77 || komma_pruef == 99)
    33. {
    34. if (used.isEmpty())
    35. { // 1 Hochzählen, wenn Paar gefunden
    36. count++;
    37. // schreiben in Array used
    38. used.add(zahlen[i]);
    39. used.add(zahlen[j]);
    40. System.out.print(zahlen[i]);
    41. System.out.print(" ");
    42. System.out.print(zahlen[j]);
    43. System.out.print(" ");
    44. System.out.println(produkte);
    45. }
    46. else if (used.contains(zahlen[i]))
    47. {
    48. // Eine der beiden Zahlen wurde schon genutzt
    49. // Hier muss ein Tausch getestet werden
    50. // vielleicht 2 mal else if um einen genauen Anhaltspunkt zu haben, für das was schon genutzt wurde.
    51. }
    52. else if (used.contains(zahlen[j]))
    53. {
    54. // Diese Zahl wurde auch schon für ein Paar verwendet
    55. // lass uns tauschen
    56. }
    57. else
    58. {
    59. // Hier muss das gleiche hin, als wenn die Liste leer wäre denn die Zahlen wurden nicht genutzt und es wurde ein Paar gefunden
    60. }
    61. }
    62. }
    63. }
    64. // Ausgabe wie viel Paare gefunden wurden
    65. System.out.print("Es wurde folgende Anzahl an Paaren gefunden: ");
    66. System.out.println(count);
    67. }
    68. }
    Alles anzeigen

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Chris2k ()