Gibt es eine einfachere Möglichkeit, das letzte Element eines Java-Arrays zu erhalten? [Duplikat]

7
%Vor%

Ich möchte den Satz teilen und das letzte Token bekommen. Ich fühle, dass meine Art, es zu tun, ein wenig zu peinlich ist. Grundsätzlich möchte ich, dass die zweite Aussage kürzer ist. Ist das möglich?

Bearbeiten : Nach was ich suche: 1) keine Notwendigkeit, das Array separat zu deklarieren 2) keine Notwendigkeit, den Satz zweimal zu teilen. Es wäre gut, wenn es eine Methode namens last mit Array gäbe. Ich vermute, dass dies unmöglich ist, aber sicherstellen wollen.

    
Terry Li 09.03.2013, 23:08
quelle

4 Antworten

12

Eine weitere Möglichkeit, das letzte Token / Wort zu erhalten

%Vor%     
Peter Lawrey 09.03.2013, 23:16
quelle
12

Sie müssen es nur einmal teilen und das letzte Element nehmen.

%Vor%

Es ist peinlich, aber es gibt wirklich keinen anderen Weg, es zu tun, wenn Sie nicht die Länge der Saite vorher wissen.

    
Makoto 09.03.2013 23:11
quelle
4

Wenn Sie dies nur einmal tun, dann ist Peter Lawreys Lösung kürzer, obwohl es IMO schwerer zu verstehen ist als die ursprüngliche Version.

Wenn Sie dies an mehreren Stellen tun, ist das Folgende besser:

%Vor%

und dann

%Vor%

... das ist eleganter als jeder clevere Hack ... IMO.

Mein allgemeinerer Punkt ist, dass die Zeit, die damit verbracht wird, eine einzelne Codezeile kürzer zu machen, wahrscheinlich Zeitverschwendung ist ... oder schlimmer:

  • Aus der Perspektive von JEMAND ELSE, die Ihren Code liest, sind eine Zeile und zwei Zeilen irrelevant.
  • Wenn der clevere Hack, der die Zeile kürzer macht, obskur ist, dann hast du tatsächlich ein BAD THING gemacht, indem du ihn benutzt hast ... aus der Perspektive des nächsten Typen, der deinen Code liest / pflegt.
  • Wenn der clevere Hack weniger effizient ist als die unelegante Version, können Sie ein Leistungsproblem haben.

Aber wenn Sie diese Codezeile (oder Ähnliches) an vielen Stellen wiederholen, ist die prozedurale Abstraktion die beste Lösung. Schreibe eine statische oder Instanzmethode ... einmal ... und rufe sie mehrmals auf.

    
Stephen C 09.03.2013 23:21
quelle
3
%Vor%     
Akram Berkawy 09.03.2013 23:15
quelle

Tags und Links