Skip to content

Commit 06d0032

Browse files
committed
refactor(java): 添加更多集合类型到通用建议中
在`getGeneralSuggestions`方法中增加了多种集合类型的代码补全建议,包括LinkedList、Stack、Queue、PriorityQueue、Deque、Set、TreeMap和TreeSet。
1 parent d294166 commit 06d0032

File tree

1 file changed

+64
-3
lines changed

1 file changed

+64
-3
lines changed

src/java/getGeneralSuggestions.ts

Lines changed: 64 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
import type { languages } from 'monaco-editor';
2-
31
export function getGeneralSuggestions(monaco: typeof import('monaco-editor'), range: any) {
42
return [
53
{
@@ -58,6 +56,69 @@ export function getGeneralSuggestions(monaco: typeof import('monaco-editor'), ra
5856
documentation: 'Creates a HashSet',
5957
range: range
6058
},
61-
// 可以继续添加更多通用提示
59+
{
60+
label: 'LinkedList',
61+
kind: monaco.languages.CompletionItemKind.Snippet,
62+
insertText: 'LinkedList<${1:type}> ${2:list} = new LinkedList<>();',
63+
insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
64+
documentation: 'Creates a LinkedList',
65+
range: range
66+
},
67+
{
68+
label: 'Stack',
69+
kind: monaco.languages.CompletionItemKind.Snippet,
70+
insertText: 'Stack<${1:type}> ${2:stack} = new Stack<>();',
71+
insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
72+
documentation: 'Creates a Stack',
73+
range: range
74+
},
75+
{
76+
label: 'Queue',
77+
kind: monaco.languages.CompletionItemKind.Snippet,
78+
insertText: 'Queue<${1:type}> ${2:queue} = new LinkedList<>(); // 使用 LinkedList 实现队列',
79+
insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
80+
documentation: 'Creates a Queue',
81+
range: range
82+
},
83+
{
84+
label: 'PriorityQueue',
85+
kind: monaco.languages.CompletionItemKind.Snippet,
86+
insertText: 'PriorityQueue<${1:type}> ${2:pq} = new PriorityQueue<>();',
87+
insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
88+
documentation: 'Creates a PriorityQueue',
89+
range: range
90+
},
91+
{
92+
label: 'Deque',
93+
kind: monaco.languages.CompletionItemKind.Snippet,
94+
insertText: 'Deque<${1:type}> ${2:deque} = new ArrayDeque<>();',
95+
insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
96+
documentation: 'Creates a Deque',
97+
range: range
98+
},
99+
{
100+
label: 'Set',
101+
kind: monaco.languages.CompletionItemKind.Snippet,
102+
insertText: 'Set<${1:type}> ${2:set} = new HashSet<>();',
103+
insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
104+
documentation: 'Creates a Set',
105+
range: range
106+
},
107+
{
108+
label: 'TreeMap',
109+
kind: monaco.languages.CompletionItemKind.Snippet,
110+
insertText: 'TreeMap<${1:K}, ${2:V}> ${3:map} = new TreeMap<>();',
111+
insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
112+
documentation: 'Creates a TreeMap',
113+
range: range
114+
},
115+
{
116+
label: 'TreeSet',
117+
kind: monaco.languages.CompletionItemKind.Snippet,
118+
insertText: 'TreeSet<${1:type}> ${2:set} = new TreeSet<>();',
119+
insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
120+
documentation: 'Creates a TreeSet',
121+
range: range
122+
},
62123
];
63124
}

0 commit comments

Comments
 (0)