microsoft / microsoft/vscode-java-debug
ArrayList get(int) Object Error
Personne n'a encore pris cette issue.
- Langage dominant
- TypeScript
- Étoiles
- 591
- Forks
- 429
- Merge moyen
- 1 j 9 h
- PR mergées (30 j)
- 19
Description
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.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par reproduire le problème avec le code ArrayList2D consolidé, JDK 13.0.2 et l’extension Java Debugger, puis suivez l’évaluation de l’expression conditionnelle du débogueur pour test.get(0).get(0). L’issue est terminée lorsque la condition du breakpoint est évaluée avec succès et affiche "Work0" au lieu d’indiquer que get(int) n’est pas défini pour Object.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- java, typescript
- Domaine
- devtools
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100