Java int Variable auf unendlich setzen?
Wir sollen einen Algorithmus zum Thema Graphenalgorithmen programmieren und im Pseudocode werden manche Distanzwerte zu Beginn auf unendlich initialisiert, nur weiß ich nicht wie man das in Java realisiert.
Ich hatte eine Idee es zu umgehen, jedoch kann man die nicht so gut umsetzen, da uns eine Klasse gegeben ist die wir nicht verändern dürfen und dort eine brauchbare Funktion fehlt
4 Antworten
Laut StackOverFlow geht das so:
Integer myInf = Integer.MAX_VALUE;
Bitte einfach mal nachdenken... "unendlich" ist KEINE ZAHL, sondern EIN KONZEPT. Deshalb wird es nichts mit "int Variable auf unendlich setzen".
Es gibt im Double Typ zwar eine Konstante, die Double.INFINITY heisst. Ich rate aber davon ab so etwas zu benutzen, denn Unendlichkeit ist kein Teil irgendeiner Zahlenmenge.
Implementiere das Ganze mit einer eigenen Klasse bzw. boolean Werten, die die Semantik "unendlich" abbilden. Aber mache nie "unendlich" künstlich zum Teil einer Zahlenmenge.
Anstatt Unendlich nimmt man in dem Fall einfach die größtmögliche Zahl.
2147483647
(Integer.MAX_VALUE kommt aufs selbe hinaus)
du kannst entweder den größtmöglichen Integer (Integer.MAX_VALUE) nutzen oder null