Erster Tag und erster Versuch, Scala zu benutzen - also schont mich! Ich versuche, etwas alten Java-Code neu zu schreiben, der einfach eine Funktion ist, die zwei Zahlen nimmt und die Zahlen von x bis y ausdruckt. Zum Beispiel habe ich die Inkrementierungsfunktion:
%Vor%Aber ich habe Mühe, eine entsprechende Dekrement-Funktion zu schreiben, die von Anfang bis Ende abnimmt? Ich habe Scala nach unten oder absteigend nach Loop gelesen? , bin aber immer noch unsicher
Danke
Wenn Sie by -1
vergessen, können Sie nach oben gehen und eine Funktion verwenden, um das Ergebnis zurückzusetzen:
Um die zweite Grenze auszuschließen, verwenden Sie until
:
Alternativ können Sie einen Iterator für Ihren Zweck definieren. Einen Iterator zu erweitern ist einfach; Implementiere einfach 'hasNext: Boolean' und 'Next: [T]', wobei T der zu handhabende Typ ist - in unserem Fall Int oder vielleicht Long oder BigInt:
%Vor%highnum bis lownum mit -1 (mit anderen negativen oder positiven Schritten wechseln, um das Stepping zu ändern)
%Vor%Ich denke, das ist ein Betrüger von Scala nach unten oder absteigend für die Schleife?
Hier ist eine globale Inkrement / Dekrement-Lösung, die von Scala nach unten oder abnehmend für die Schleife inspiriert wurde? :
%Vor%Dies ist auch eine Methode. aber möglicherweise nicht das Beste
Methodenaufruf:
printInDecreasingOrder(10, 2)
Ergebnis:
Aktueller Wert (von 10 auf 2) ist 10
Aktueller Wert (von 10 auf 2) ist 9
Der aktuelle Wert (von 10 auf 2) ist 8
Aktueller Wert (von 10 auf 2) ist 7
Aktueller Wert (von 10 auf 2) ist 6
Aktueller Wert (von 10 auf 2) ist 5
Aktueller Wert (von 10 auf 2) ist 4
Aktueller Wert (von 10 auf 2) ist 3
Aktueller Wert (von 10 auf 2) ist 2
printInDecreasingOrder(1, 10)
Ergebnis:
erste Zahl ist kleiner als zweite
Tags und Links scala