microsoft / microsoft/vscode-java-debug
ArrayList get(int) Object Error
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 591
- Forks
- 429
- Ø Merge
- 1 T. 9 Std.
- Gemergte PRs (30 T.)
- 19
Beschreibung
Error produced in debugger
Breakpoint condition 'test.get(0).get(0).equals("Work0")' error: Cannot evaluate because of compilation error(s): The method get(int) is undefined for the type Object.
Breakpoint created on line with System.out.println("End") used in debugger
test.get(0).get(0).equals("Work0")
Consolidated code
import java.util.ArrayList;
public class ArrayList2D {
public static void main(String[] args) {
ArrayList<ArrayList> test = new ArrayList<ArrayList>();
ArrayList subTest = new ArrayList();
subTest.add("Work0");
subTest.add("Work1");
subTest.add("Work2");
test.add(subTest);
System.out.println("Full ArrayList: " + test);
System.out.println("Targetted location of ArrayList: " + test.get(0).get(0));
if (test.get(0).get(0).equals("Work0")) {
System.out.println("Breakpoint should work!");
}
System.out.println("End");
}
}
Code Output without Debugger
Full ArrayList: [[Work0, Work1, Work2]]
Targetted location of ArrayList: Work0
Breakpoint should work!
End
Environment
- Operating System: Windows 10 x64
- JDK version: JDK 13.0.2
- Visual Studio Code version: 1.51.1
- Java extension version: 0.12.0
- Java Debugger extension version: 0.29.0
Steps To Reproduce
- Run consolidated code
- Setup a breakpoint at the End printout with test.get(0).get(0).equals("Work0")
Current Result
test.get(0).get(0): Cannot evaluate because of compilation error(s): The method get(int) is undefined for the type Object.
Expected Result
test.get(0).get(0): "Work0"
Additional Information
I have a program that uses 2D ArrayLists, and I commonly will track down issues utilizing the debugger. I have not used the debugger in a few months, but since I came back to my setup (same breakpoints as before) the debugger has changed behavior.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, das Problem mit dem konsolidierten ArrayList2D-Code, JDK 13.0.2 und der Java Debugger-Erweiterung zu reproduzieren, und verfolge anschließend die Auswertung des Bedingungsausdrucks des Debuggers für test.get(0).get(0). Das Issue ist abgeschlossen, wenn die Breakpoint-Bedingung erfolgreich ausgewertet wird und "Work0" anzeigt, anstatt zu melden, dass get(int) für Object nicht definiert ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java, typescript
- Bereich
- devtools
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100