2017-12-01 1 views
0

Das ist eine Frage, die Spaß macht, aber was ist der kürzest mögliche Ausnahmecode in Kotlin? Jede AusnahmeKürzestmöglicher Code, um eine Ausnahme in Kotlin zu erzeugen?

Etwas wie:

throw null!! 

, die eine NPE werfen.

... aber hey das ist immer noch eine ziemlich lange Linie mit 12 Zeichen. Es ist wirklich sehr nützlich für Tests wie Protokollierung von Ausnahmen in Analytik und dergleichen.

+2

Ich glaube nicht, dass das Speichern von ein paar Zeichen wirklich etwas wert sein wird über 'throw ()' – chris

+0

@chris Manchmal ist eine Dienstprogrammfunktion, die eine Ausnahme auslöst, viel praktischer als das Schreiben derselben lange Ausnahme Nachricht mehrere Male – msrd0

+1

Btw 'null !!' wird bereits eine Ausnahme werfen, keine Notwendigkeit für die "throw" davor – msrd0

Antwort

6

Hier ist eine noch kürzere führen:

1/0 

Es wirft java.lang.ArithmeticException:/by zero.

+0

lol, ich wusste, dass es etwas noch kürzeres geben muss. Schön! – donfuxx

0

Bisher ist die kürzeste ich mir vorstellen kann, ist:

""[1] 

5 Zeichen und wird StringIndexOutOfBoundsException: length=0; index=1

0

Wenn Sie nichts dagegen haben einige Utility-Code setzen irgendwo können Sie diesen Code verwenden:

e() 

Und das Dienstprogramm Code:

fun e() : Nothing = throw Exception() 

Die Nothing Rückgabetyp weist den Compiler an, dass die Funktion wird nie zurückkehren.

1

In Bezug auf die Anzahl der Zeichen, können Sie einfach eine Eigenschaft deklarieren, die eine Funktion Getter Exception werfen hat:

val T: Nothing 
    get() = throw Exception("For testing purpose!!") 

Zur Erinnerung: Die Verwendungen dieses Codes wahrscheinlich entfernt sofort nach Gebrauch werden sollen, weil es hat keine Bedeutung.

Wenn Sie einfach weniger Zeichen eingeben möchten, empfehle ich, eine Live Template dafür zu erstellen.

Verwandte Themen