Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
CSDN 技术社区
skill_tree_java
提交
ee801ad4
S
skill_tree_java
项目概览
CSDN 技术社区
/
skill_tree_java
通知
43
Star
8
Fork
4
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
4
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
skill_tree_java
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
4
Issue
4
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
ee801ad4
编写于
12月 02, 2021
作者:
M
Mars Liu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fixed strcutre errors
上级
82cb5562
变更
22
显示空白变更内容
内联
并排
Showing
22 changed file
with
100 addition
and
43 deletion
+100
-43
data/1.Java初阶/1.Java概览/1.编辑Java源代码/HelloWorld.json
data/1.Java初阶/1.Java概览/1.编辑Java源代码/HelloWorld.json
+2
-1
data/1.Java初阶/10.类和接口/1.类和面向对象/config.json
data/1.Java初阶/10.类和接口/1.类和面向对象/config.json
+1
-1
data/1.Java初阶/11.IO初步/1.字节流/config.json
data/1.Java初阶/11.IO初步/1.字节流/config.json
+1
-1
data/1.Java初阶/11.IO初步/2.File类/config.json
data/1.Java初阶/11.IO初步/2.File类/config.json
+1
-1
data/1.Java初阶/2.Java的基本语法/1.Java的基本语法格式/app.json
data/1.Java初阶/2.Java的基本语法/1.Java的基本语法格式/app.json
+3
-1
data/1.Java初阶/2.Java的基本语法/2.Java中的注释/comment.json
data/1.Java初阶/2.Java的基本语法/2.Java中的注释/comment.json
+3
-1
data/1.Java初阶/2.Java的基本语法/3.Java中的关键字/keyword.json
data/1.Java初阶/2.Java的基本语法/3.Java中的关键字/keyword.json
+3
-1
data/1.Java初阶/3.Java中的变量与常量/1.变量的定义/swap.json
data/1.Java初阶/3.Java中的变量与常量/1.变量的定义/swap.json
+3
-1
data/1.Java初阶/3.Java中的变量与常量/1.变量的定义/vars.json
data/1.Java初阶/3.Java中的变量与常量/1.变量的定义/vars.json
+3
-1
data/1.Java初阶/3.Java中的变量与常量/3.Java中的常量/solidity.json
data/1.Java初阶/3.Java中的变量与常量/3.Java中的常量/solidity.json
+3
-1
data/1.Java初阶/3.Java中的变量与常量/4.变量的作用域/scope.json
data/1.Java初阶/3.Java中的变量与常量/4.变量的作用域/scope.json
+3
-1
data/1.Java初阶/4.Java中的运算符/1.比较运算符/find.json
data/1.Java初阶/4.Java中的运算符/1.比较运算符/find.json
+3
-1
data/1.Java初阶/4.Java中的运算符/1.比较运算符/max.json
data/1.Java初阶/4.Java中的运算符/1.比较运算符/max.json
+3
-1
data/1.Java初阶/7.集合/12.遗留的集合/config.json
data/1.Java初阶/7.集合/12.遗留的集合/config.json
+1
-1
data/1.Java初阶/7.集合/6.Java集合框架/config.json
data/1.Java初阶/7.集合/6.Java集合框架/config.json
+1
-1
data/1.Java初阶/7.集合/9.散列集/hashset.json
data/1.Java初阶/7.集合/9.散列集/hashset.json
+0
-0
data/1.Java初阶/9.控制执行流程/1.if-else/ifelse.json
data/1.Java初阶/9.控制执行流程/1.if-else/ifelse.json
+3
-1
data/2.Java中阶/6.深入研究容器/1.Collection的功能方法/config.json
data/2.Java中阶/6.深入研究容器/1.Collection的功能方法/config.json
+1
-1
data/2.Java中阶/7.注解/3.基于注解的单元测试/junit.json
data/2.Java中阶/7.注解/3.基于注解的单元测试/junit.json
+3
-1
data/3.Java高阶/1.行为抽象和Lambda/5.分组/group_by.json
data/3.Java高阶/1.行为抽象和Lambda/5.分组/group_by.json
+8
-0
data/tree.json
data/tree.json
+28
-6
src/tree.py
src/tree.py
+23
-19
未找到文件。
data/1.Java初阶/1.Java概览/1.编辑Java源代码/HelloWorld.json
浏览文件 @
ee801ad4
...
@@ -2,6 +2,6 @@
...
@@ -2,6 +2,6 @@
"type"
:
"code_options"
,
"type"
:
"code_options"
,
"author"
:
"ccat"
,
"author"
:
"ccat"
,
"source"
:
"HelloWorld.md"
,
"source"
:
"HelloWorld.md"
,
"exercise_id"
:
"1190bb7834904da0b1f20915960714d5"
,
"exercise_id"
:
"1190bb7834904da0b1f20915960714d5"
,
"notebook_enable"
:
true
"notebook_enable"
:
true
}
}
\ No newline at end of file
data/1.Java初阶/10.类和接口/1.类和面向对象/config.json
浏览文件 @
ee801ad4
{
{
"keywords"
:
[],
"keywords"
:
[
"class"
,
"类"
,
"面向对象"
,
"oo"
],
"children"
:
[],
"children"
:
[],
"node_id"
:
"java-0593e0b9c9f74799a204d697f0db488b"
,
"node_id"
:
"java-0593e0b9c9f74799a204d697f0db488b"
,
"export"
:
[
"export"
:
[
...
...
data/1.Java初阶/11.IO初步/1.字节流/config.json
浏览文件 @
ee801ad4
{
{
"node_id"
:
"java-3ea06f6d049d4c079a88747ffd0cc51e"
,
"node_id"
:
"java-3ea06f6d049d4c079a88747ffd0cc51e"
,
"keywords"
:
[],
"keywords"
:
[
"字节流"
,
"bytestream"
],
"children"
:
[],
"children"
:
[],
"export"
:
[
"export"
:
[
"bytestream.json"
"bytestream.json"
...
...
data/1.Java初阶/11.IO初步/2.File类/config.json
浏览文件 @
ee801ad4
{
{
"node_id"
:
"java-046d129404f14676af135da42fea658b"
,
"node_id"
:
"java-046d129404f14676af135da42fea658b"
,
"keywords"
:
[],
"keywords"
:
[
"文件"
,
"文件类"
,
"file"
],
"children"
:
[],
"children"
:
[],
"export"
:
[
"export"
:
[
"file.json"
"file.json"
...
...
data/1.Java初阶/2.Java的基本语法/1.Java的基本语法格式/app.json
浏览文件 @
ee801ad4
...
@@ -2,5 +2,6 @@
...
@@ -2,5 +2,6 @@
"type"
:
"code_options"
,
"type"
:
"code_options"
,
"author"
:
"ccat"
,
"author"
:
"ccat"
,
"source"
:
"app.md"
,
"source"
:
"app.md"
,
"exercise_id"
:
"f83bb3ca8a7d4070a5cdb850c8745d43"
"exercise_id"
:
"f83bb3ca8a7d4070a5cdb850c8745d43"
,
"notebook_enable"
:
true
}
}
\ No newline at end of file
data/1.Java初阶/2.Java的基本语法/2.Java中的注释/comment.json
浏览文件 @
ee801ad4
...
@@ -2,5 +2,6 @@
...
@@ -2,5 +2,6 @@
"type"
:
"code_options"
,
"type"
:
"code_options"
,
"author"
:
"ccat"
,
"author"
:
"ccat"
,
"source"
:
"comment.md"
,
"source"
:
"comment.md"
,
"exercise_id"
:
"a666420ebe28430dab8ad4bd99306dfb"
"exercise_id"
:
"a666420ebe28430dab8ad4bd99306dfb"
,
"notebook_enable"
:
true
}
}
\ No newline at end of file
data/1.Java初阶/2.Java的基本语法/3.Java中的关键字/keyword.json
浏览文件 @
ee801ad4
...
@@ -2,5 +2,6 @@
...
@@ -2,5 +2,6 @@
"type"
:
"code_options"
,
"type"
:
"code_options"
,
"author"
:
"ccat"
,
"author"
:
"ccat"
,
"source"
:
"keyword.md"
,
"source"
:
"keyword.md"
,
"exercise_id"
:
"57b6f2510fde488486f73ab8597370c6"
"exercise_id"
:
"57b6f2510fde488486f73ab8597370c6"
,
"notebook_enable"
:
true
}
}
\ No newline at end of file
data/1.Java初阶/3.Java中的变量与常量/1.变量的定义/swap.json
浏览文件 @
ee801ad4
...
@@ -2,5 +2,6 @@
...
@@ -2,5 +2,6 @@
"type"
:
"code_options"
,
"type"
:
"code_options"
,
"author"
:
"ccat"
,
"author"
:
"ccat"
,
"source"
:
"swap.md"
,
"source"
:
"swap.md"
,
"exercise_id"
:
"accd5c6fca914d69990826e6123de37e"
"exercise_id"
:
"accd5c6fca914d69990826e6123de37e"
,
"notebook_enable"
:
true
}
}
\ No newline at end of file
data/1.Java初阶/3.Java中的变量与常量/1.变量的定义/vars.json
浏览文件 @
ee801ad4
...
@@ -2,5 +2,6 @@
...
@@ -2,5 +2,6 @@
"type"
:
"code_options"
,
"type"
:
"code_options"
,
"author"
:
"ccat"
,
"author"
:
"ccat"
,
"source"
:
"vars.md"
,
"source"
:
"vars.md"
,
"exercise_id"
:
"f990d6473c1c4b0c8947c27681c8f476"
"exercise_id"
:
"f990d6473c1c4b0c8947c27681c8f476"
,
"notebook_enable"
:
true
}
}
\ No newline at end of file
data/1.Java初阶/3.Java中的变量与常量/3.Java中的常量/solidity.json
浏览文件 @
ee801ad4
...
@@ -2,5 +2,6 @@
...
@@ -2,5 +2,6 @@
"type"
:
"code_options"
,
"type"
:
"code_options"
,
"author"
:
"ccat"
,
"author"
:
"ccat"
,
"source"
:
"solidity.md"
,
"source"
:
"solidity.md"
,
"exercise_id"
:
"45bc14d503364f999f98e5d2faad2fec"
"exercise_id"
:
"45bc14d503364f999f98e5d2faad2fec"
,
"notebook_enable"
:
true
}
}
\ No newline at end of file
data/1.Java初阶/3.Java中的变量与常量/4.变量的作用域/scope.json
浏览文件 @
ee801ad4
...
@@ -2,5 +2,6 @@
...
@@ -2,5 +2,6 @@
"type"
:
"code_options"
,
"type"
:
"code_options"
,
"author"
:
"ccat"
,
"author"
:
"ccat"
,
"source"
:
"scope.md"
,
"source"
:
"scope.md"
,
"exercise_id"
:
"009d35ca11a24baa809d0eeb5e2f66e2"
"exercise_id"
:
"009d35ca11a24baa809d0eeb5e2f66e2"
,
"notebook_enable"
:
true
}
}
\ No newline at end of file
data/1.Java初阶/4.Java中的运算符/1.比较运算符/find.json
浏览文件 @
ee801ad4
...
@@ -2,5 +2,6 @@
...
@@ -2,5 +2,6 @@
"type"
:
"code_options"
,
"type"
:
"code_options"
,
"author"
:
"ccat"
,
"author"
:
"ccat"
,
"source"
:
"find.md"
,
"source"
:
"find.md"
,
"exercise_id"
:
"61cca0fdecc34b00b173f4edc575ce48"
"exercise_id"
:
"61cca0fdecc34b00b173f4edc575ce48"
,
"notebook_enable"
:
true
}
}
\ No newline at end of file
data/1.Java初阶/4.Java中的运算符/1.比较运算符/max.json
浏览文件 @
ee801ad4
...
@@ -2,5 +2,6 @@
...
@@ -2,5 +2,6 @@
"type"
:
"code_options"
,
"type"
:
"code_options"
,
"author"
:
"ccat"
,
"author"
:
"ccat"
,
"source"
:
"max.md"
,
"source"
:
"max.md"
,
"exercise_id"
:
"5025886554e5470e82710ed84735e419"
"exercise_id"
:
"5025886554e5470e82710ed84735e419"
,
"notebook_enable"
:
true
}
}
\ No newline at end of file
data/1.Java初阶/7.集合/12.遗留的集合/config.json
浏览文件 @
ee801ad4
{
{
"node_id"
:
"java-98b609c0de1544bf955cd3e1996224f7"
,
"node_id"
:
"java-98b609c0de1544bf955cd3e1996224f7"
,
"keywords"
:
[],
"keywords"
:
[
"集合"
,
"legacy"
],
"children"
:
[
"children"
:
[
{
{
"属性映射"
:
{
"属性映射"
:
{
...
...
data/1.Java初阶/7.集合/6.Java集合框架/config.json
浏览文件 @
ee801ad4
{
{
"node_id"
:
"java-af0bf70f564b4ac68a7fadda69d55086"
,
"node_id"
:
"java-af0bf70f564b4ac68a7fadda69d55086"
,
"keywords"
:
[],
"keywords"
:
[
"集合"
,
"collection"
],
"children"
:
[
"children"
:
[
{
{
"集合接口与实现分离"
:
{
"集合接口与实现分离"
:
{
...
...
data/1.Java初阶/7.集合/9.散列集/hashset.json
浏览文件 @
ee801ad4
data/1.Java初阶/9.控制执行流程/1.if-else/ifelse.json
浏览文件 @
ee801ad4
...
@@ -2,5 +2,6 @@
...
@@ -2,5 +2,6 @@
"type"
:
"code_options"
,
"type"
:
"code_options"
,
"author"
:
"ccat"
,
"author"
:
"ccat"
,
"source"
:
"ifelse.md"
,
"source"
:
"ifelse.md"
,
"notebook_enable"
:
false
"notebook_enable"
:
false
,
"exercise_id"
:
"6feafab76cba4d91a083c1dc0b14a80b"
}
}
\ No newline at end of file
data/2.Java中阶/6.深入研究容器/1.Collection的功能方法/config.json
浏览文件 @
ee801ad4
{
{
"node_id"
:
"java-20cad95081b4475aaac1c1ebf7af0253"
,
"node_id"
:
"java-20cad95081b4475aaac1c1ebf7af0253"
,
"keywords"
:
[],
"keywords"
:
[
"容器"
,
"collection"
,
"方法"
],
"children"
:
[],
"children"
:
[],
"export"
:
[
"export"
:
[
"Collection.json"
"Collection.json"
...
...
data/2.Java中阶/7.注解/3.基于注解的单元测试/junit.json
浏览文件 @
ee801ad4
...
@@ -2,5 +2,6 @@
...
@@ -2,5 +2,6 @@
"type"
:
"code_options"
,
"type"
:
"code_options"
,
"author"
:
"ccat"
,
"author"
:
"ccat"
,
"source"
:
"junit.md"
,
"source"
:
"junit.md"
,
"notebook_enable"
:
false
"notebook_enable"
:
false
,
"exercise_id"
:
"38a9581c24d9427598c83112d0af0c34"
}
}
\ No newline at end of file
data/3.Java高阶/1.行为抽象和Lambda/5.分组/group_by.json
浏览文件 @
ee801ad4
{
"type"
:
"code_options"
,
"author"
:
"ccat"
,
"source"
:
"group_by.md"
,
"notebook_enable"
:
true
,
"exercise_id"
:
"a2249d4d426c403da4382c62e64f37e5"
}
\ No newline at end of file
data/tree.json
浏览文件 @
ee801ad4
...
@@ -433,7 +433,10 @@
...
@@ -433,7 +433,10 @@
{
{
"Java集合框架"
:
{
"Java集合框架"
:
{
"node_id"
:
"java-af0bf70f564b4ac68a7fadda69d55086"
,
"node_id"
:
"java-af0bf70f564b4ac68a7fadda69d55086"
,
"keywords"
:
[],
"keywords"
:
[
"集合"
,
"collection"
],
"children"
:
[
"children"
:
[
{
{
"集合接口与实现分离"
:
{
"集合接口与实现分离"
:
{
...
@@ -561,7 +564,10 @@
...
@@ -561,7 +564,10 @@
{
{
"遗留的集合"
:
{
"遗留的集合"
:
{
"node_id"
:
"java-98b609c0de1544bf955cd3e1996224f7"
,
"node_id"
:
"java-98b609c0de1544bf955cd3e1996224f7"
,
"keywords"
:
[],
"keywords"
:
[
"集合"
,
"legacy"
],
"children"
:
[
"children"
:
[
{
{
"属性映射"
:
{
"属性映射"
:
{
...
@@ -1037,7 +1043,12 @@
...
@@ -1037,7 +1043,12 @@
{
{
"类和面向对象"
:
{
"类和面向对象"
:
{
"node_id"
:
"java-0593e0b9c9f74799a204d697f0db488b"
,
"node_id"
:
"java-0593e0b9c9f74799a204d697f0db488b"
,
"keywords"
:
[],
"keywords"
:
[
"class"
,
"类"
,
"面向对象"
,
"oo"
],
"children"
:
[]
"children"
:
[]
}
}
},
},
...
@@ -1085,14 +1096,21 @@
...
@@ -1085,14 +1096,21 @@
{
{
"字节流"
:
{
"字节流"
:
{
"node_id"
:
"java-3ea06f6d049d4c079a88747ffd0cc51e"
,
"node_id"
:
"java-3ea06f6d049d4c079a88747ffd0cc51e"
,
"keywords"
:
[],
"keywords"
:
[
"字节流"
,
"bytestream"
],
"children"
:
[]
"children"
:
[]
}
}
},
},
{
{
"File类"
:
{
"File类"
:
{
"node_id"
:
"java-046d129404f14676af135da42fea658b"
,
"node_id"
:
"java-046d129404f14676af135da42fea658b"
,
"keywords"
:
[],
"keywords"
:
[
"文件"
,
"文件类"
,
"file"
],
"children"
:
[]
"children"
:
[]
}
}
}
}
...
@@ -2028,7 +2046,11 @@
...
@@ -2028,7 +2046,11 @@
{
{
"Collection的功能方法"
:
{
"Collection的功能方法"
:
{
"node_id"
:
"java-20cad95081b4475aaac1c1ebf7af0253"
,
"node_id"
:
"java-20cad95081b4475aaac1c1ebf7af0253"
,
"keywords"
:
[],
"keywords"
:
[
"容器"
,
"collection"
,
"方法"
],
"children"
:
[]
"children"
:
[]
}
}
},
},
...
...
src/tree.py
浏览文件 @
ee801ad4
...
@@ -326,8 +326,12 @@ class TreeWalker:
...
@@ -326,8 +326,12 @@ class TreeWalker:
def
ensure_exercises_meta
(
self
,
meta_path
,
source
):
def
ensure_exercises_meta
(
self
,
meta_path
,
source
):
_
,
mfile
=
os
.
path
.
split
(
meta_path
)
_
,
mfile
=
os
.
path
.
split
(
meta_path
)
meta
=
None
if
os
.
path
.
exists
(
meta_path
):
if
os
.
path
.
exists
(
meta_path
):
meta
=
load_json
(
meta_path
)
with
open
(
meta_path
)
as
f
:
content
=
f
.
read
()
if
content
:
meta
=
json
.
loads
(
content
)
if
"exercise_id"
not
in
meta
:
if
"exercise_id"
not
in
meta
:
meta
[
"exercise_id"
]
=
uuid
.
uuid4
().
hex
meta
[
"exercise_id"
]
=
uuid
.
uuid4
().
hex
if
"notebook_enable"
not
in
meta
:
if
"notebook_enable"
not
in
meta
:
...
@@ -338,7 +342,7 @@ class TreeWalker:
...
@@ -338,7 +342,7 @@ class TreeWalker:
meta
[
"author"
]
=
user_name
()
meta
[
"author"
]
=
user_name
()
if
"type"
not
in
meta
:
if
"type"
not
in
meta
:
meta
[
"type"
]
=
"code_options"
meta
[
"type"
]
=
"code_options"
els
e
:
if
meta
is
Non
e
:
meta
=
{
meta
=
{
"type"
:
"code_options"
,
"type"
:
"code_options"
,
"author"
:
user_name
(),
"author"
:
user_name
(),
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录