项目地址 
 
概述
将力扣[…]格式的输入样例直接转换成可用的数据结构!
样例:
1 2 3 4 5 6 7
   | @LeetCodeData(value = "[1,null,0,0,1]", index = 0) public class Main{     public static void main(String[] args){         LeetCodeContext lcc=new LeetCodeContext(Main.class);         TreeNode root=lcc.getBinaryTree(0);     } }
   | 
 
使用方法
在测试类前加上@LeetCodeData注解,该注解包含1个参数
- value:数据内容,支持
[...]的字符串格式,此外最外层的中括号也可以去除,如@LeetCodeData(value = "1,2,3")  
此外你也可以用@LeetCodeExample样例输入一整串样例,如
1
   | @LeetCodeExample("s=[7,8,9],b=\"abcdefg\",c=[['A','B','C'],['B','C'],['C']],d=[1,null,0,0,1]")
  | 
 
在main函数中创建LeetCodeContext类,并在构造参数中输入所在类的Class对象,如:
1
   | LeetCodeContext lcc=new LeetCodeContext(Main.class);
   | 
 
LeetCodeContext支持的方法:
int[] getIntArray(int index):按照一维int数组解析指定index的注解 
List<Integer> getIntList(int index):按照一维int数组解析指定index的注解,并返回一个对应的ArrayList 
int[][] getIntArrays(int index):按照二维int数组解析指定index的注解 
char[] getCharArray(int index):按照一维char数组解析指定index的注解 
char[][] getCharArrays(int index):按照二维char数组解析指定index的注解 
String getString(int index):按照字符串解析指定index的注解 
String[] getStringArray(int index):按照字符串数组解析指定index的注解 
TreeNode getBinaryTree(int index):按照LeetCode常用的TreeNode类解析指定index的注解,并返回一个二叉树的根节点 
ListNode getListNode(int index):按照LeetCode常用的ListNode类解析指定index的注解,并返回一个链表的根节点 
对于所有get方法都有解析Example的版本:
T getT(int expIndex,int index):解析指定Example注解的第i项数据,同样从0开始 
1 2 3 4 5 6 7
   | @LeetCodeExample("s=[7,8,9],b=\"abcdefg\",c=[['A','B','C'],['B','C'],['C']],d=[1,null,0,0,1]") public class Main{     public static void main(String[] args){         LeetCodeContext lcc=new LeetCodeContext(Main.class);         TreeNode root=lcc.getBinaryTree(0,3);     } }
  | 
 
当同时包含多个Data注解或者Example注解时,index按照代码顺序分配,从0开始,且二者彼此独立如:
1 2 3 4 5
   | @LeetCodeData("[1,null,0,0,1]") @LeetCodeData("[1,2,3]") ... @LeetCodeExample("s=[1,2,3],b=[4,5,6]") @LeetCodeExample("s=[7,8,9],b=\"abcdefg\",c=[['A','B','C'],['B','C'],['C']]")
  | 
 
支持格式
一维数组
1 2
   | @LeetCodeData("[1,2,3]") @LeetCodeData("['A','B','C','D']")
  | 
 
二维数组
1 2
   | @LeetCodeData("[[1,2,3],[1,2],[3]]") @LeetCodeData("[['A','B','C'],['B','C'],['C']]")
  | 
 
字符串
1
   | @LeetCodeData("abcdefg")
  | 
 
字符串数组
1
   | @LeetCodeData("[\"tars\",\"rats\",\"arts\",\"star\"]")
  | 
 
LeetCode提供的二叉树和链表等
1
   | @LeetCodeData("[1,null,0,0,1]")
  | 
 
LeetCode提供的完整样例
1
   | @LeetCodeExample("s=[7,8,9],b=\"abcdefg\",c=[['A','B','C'],['B','C'],['C']],d=[1,null,0,0,1]")
  |