如何在 VS Code 中调试 LeetCode 代码?

摘要: 面试刷题指南。java

Fundebug经受权转载,版权归原做者全部。git

近期收到很多小伙伴的求助,但愿知道如何在 VS Code 中调试 LeetCode 代码。一般来讲,为了调试本地代码,咱们须要安装相关的语言支持插件。本文中,咱们就以调试 LeetCode Java 代码为例,给你们介绍本地调试 LeetCode 代码的经常使用套路。github

想要了解如何在 VS Code 中刷题的小伙伴,能够移步: LeetCode for VS Code: 春招 Offer 收割利器

准备工做

首先确保系统内安装了JDK,相关教程有不少,此处就不赘述了。面试

以后咱们须要确保在 VS Code 中安装了下列插件:编辑器

1. LeetCode函数

用来生成题目,提交答案。ui

2. Language Support for Java(TM) by Red Hatspa

提供智能提示等语言相关的功能。插件

3. Debugger for Java,Java debug

调试器。

安装完成以后,VS Code 的插件管理栏中,就能够看到这三个插件了:

若是在打开 Java 文件后,VS Code 提示找不到 JDK,请检查一下 相关配置是否正确

编写调试代码:

咱们就拿第 20 题:有效的括号做为例子。

在做答过程当中,可能会看到编辑器里出现一些红线。不要担忧,这代表 Language Support for Java 插件正在起做用。一般这意味着你的代码存在语法错误,下面的例子展现的错误缘由是用到了依赖包但没有 import 到当前文件当中。咱们能够利用 Quick Fix 功能进行修复:

将依赖包导入时为了确保文件可以被正确编译。LeetCode 在检查答案的时候,并不会要求文件中存在相应的 import 语句,所以存不存在 import 语句不会影响最后的检查结果。

写完答案以后,咱们还须要在同一个文件中,增长一个 Main 函数做为调试程序的执行入口,整个文件的代码结构以下:

class Main {
    public static void main(String[] args) {
        // Create a new Solution instance
        Solution solution = new Solution();
        // Create a test case
        String testCase = "()[]{}";
        // Get the answer
        boolean answer = solution.isValid(testCase);
        // Print the answer
        System.out.println(answer);
    }
}

class Solution {

    ...

    public boolean isValid(String s) {

        ...

        return answer;
    }
}

此时咱们会看到在 Main 函数的上方出现了两个 CodeLens 按钮:

点击 Run 按钮会运行 Main 函数,咱们能够在下方弹出的 Debug Console 中看到程序的输出结果(由于咱们在最后一行代码用了 println 输出答案)。

若是想要调试的话,能够在相应的行号位置设置好断点,点击 Debug 按钮,就能够进入调试模式查看代码运行状况了。

这里有一点须要注意的是,因为 LeetCode 生成的答题模板的类名均为 Solution,所以会形成同一个目录下存在多个同名类的状况出现,可能致使代码没法正确执行,所以若是但愿调试 LeetCode Java 代码,但当前目录又存在有多个 LeetCode Java 文件时,须要保证类名的惟一性,咱们能够把被调试的 Solution 类改一个名字(但要记住提交时把名字改回来),或者干脆拷贝到另外一个干净的目录下调试便可。

以上就是如何在 VS Code 中调试 LeetCode Java 代码的步骤,对于其余语言来讲,基本也是大同小异的步骤,若是你有更好的建议或者有本身喜欢的调试技巧,欢迎在评论区留言!

相关文章
相关标签/搜索