In Python dürfen Sie negative Array-Indizes verwenden, um von der rechten Seite eines Arrays ausgehend zu zählen. Zum Beispiel ist Array [-1] das letzte Element und Array [-2] ist das vorletzte Element im Array. Wie würdest du das in Java machen?Wie implementiert man negative Indizes in Java?
5
A
Antwort
19
Java unterstützt keine negativen Indizes, die letzte Zelle zuzugreifen, Sie
array[array.length-1] = lastElement;
3
Java Index Index beginnt mit 0. Kein negativer Index verwendet werden kann, verwendet werden soll. Falls überhaupt verwendet, wird Java den Array-Index außerhalb der Grenzen der Exception werfen.
2
Um so etwas wie dies umzusetzen, würden Sie eine kreisförmige, doppelt verknüpfte Liste erstellen müssen ... ich dies nicht kompilieren und testen, aber dies ist die allgemeine Idee ...
public class LinkedList {
Integer node;
LinkedList next;
LinkedList prev;
public LinkList(Integer node) {
this.node = node;
this.next = this;
this.prev = this;
}
public void insert(Integer node) {
if(this.node == null) {
this.node = node;
this.next = this;
this.prev = this;
}
else if(this.next == null) {
this.next = new LinkedList(node);
this.prev = node
this.next.prev = this;
this.next.next = this;
}
else {
this.next(node, this);
}
}
private void insert(Integer node, LinkedList head) {
if(this.next == null) {
this.next = new LinkedList(node);
this.next.prev = this;
this.next.next = head;
}
else {
this.next(node, head);
}
}
public Interger get(int index) {
int cursor = 0;
if(index == cursor) {
return this.node;
}
else if(index < cursor) {
return this.prev.get(index, cursor-1);
}
else {
return this.next.get(index, cursor+1);
}
}
private Interger get(int index, int cursor) {
if(index == cursor) {
return this.node;
}
else if(index < cursor) {
return this.prev.get(index, cursor-1);
}
else {
return this.next.get(index, cursor+1);
}
}
}
public static void main(String[] args) {
LinkedList list = new LinkedList(new Integer(1));
list.insert(new Integer(2));
list.insert(new Integer(3));
System.out.println(list.get(-1).toString());
}
Verwandte Themen
- 1. Arrays und negative Indizes in Perl
- 2. Sind negative Array-Indizes in C zulässig?
- 3. Wie implementiert man ein TreeSet in Java?
- 4. Wie man optische Elemente in Java implementiert
- 5. Wie implementiert man Java-Schnittstellen in Frege?
- 6. Wie implementiert MongoDB seine räumlichen Indizes?
- 7. Java 7: Wie implementiert man Drag & Drop in Java?
- 8. Wie implementiert man elastische Suche mit Java?
- 9. Wie implementiert man die Java-vergleichbare Schnittstelle?
- 10. Wie implementiert man einen Java-Stream?
- 11. Wie berechnet Java negative Zahlen?
- 12. Wie werden reguläre und zusammengesetzte Indizes in RDBs implementiert?
- 13. Wie konvertiert man negative hexadezimale in dezimal
- 14. Java Regex: Negative Lookahead
- 15. Wie testet man einen Validator, der ConstraintValidator in Java implementiert?
- 16. Wie man das Python-Programm in Java-Sprache implementiert
- 17. Wie implementiert man eine Set-Datenstruktur in Java?
- 18. Wie implementiert man fast Übereinstimmungen von Strings in Java?
- 19. Wie implementiert man zirkuläre verkettete Liste in Java?
- 20. Wie implementiert man einen Wrapper Decorator in Java?
- 21. Wie implementiert man Factory-Muster mit Generics in Java?
- 22. Wie implementiert man den Kerberos-Protokollübergang in Java? (S4U2Self)
- 23. Wie implementiert man einen benutzerdefinierten lokalen DNS-Dienst in Java?
- 24. Wie implementiert man virtuelle Methoden in Python?
- 25. Wie implementiert man ein Bitset in C?
- 26. Wie implementiert man Textauswahl?
- 27. Wie implementiert man jScroll?
- 28. Wie implementiert man Wasserkräuselungen?
- 29. Wie implementiert man etwas Ähnliches wie die @Override Java Annotation?
- 30. Negative Long in Hex in Java analysieren
Es ist jetzt einfacher zu verstehen, was gefragt wird. Könnte jemand diese Frage bitte erneut beantworten? –
Natürlich können Sie Ihr eigenes Objekt erstellen. Aber es wird eine Methode wie PythonArray.getElement (int elementIndex) haben – borjab