presently 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/bin/presently +13 -0
- data/lib/presently/application.rb +104 -0
- data/lib/presently/clock.rb +77 -0
- data/lib/presently/display_view.rb +73 -0
- data/lib/presently/environment/application.rb +62 -0
- data/lib/presently/page.rb +38 -0
- data/lib/presently/page.xrb +31 -0
- data/lib/presently/presentation.rb +72 -0
- data/lib/presently/presentation_controller.rb +181 -0
- data/lib/presently/presenter_view.rb +264 -0
- data/lib/presently/slide.rb +148 -0
- data/lib/presently/slide_view.rb +92 -0
- data/lib/presently/state.rb +66 -0
- data/lib/presently/version.rb +9 -0
- data/lib/presently.rb +9 -0
- data/license.md +21 -0
- data/public/_components/@socketry/syntax/Syntax/CodeElement.js +337 -0
- data/public/_components/@socketry/syntax/Syntax/Errors.js +52 -0
- data/public/_components/@socketry/syntax/Syntax/Language/apache.js +49 -0
- data/public/_components/@socketry/syntax/Syntax/Language/applescript.js +157 -0
- data/public/_components/@socketry/syntax/Syntax/Language/assembly.js +42 -0
- data/public/_components/@socketry/syntax/Syntax/Language/bash-script.js +108 -0
- data/public/_components/@socketry/syntax/Syntax/Language/bash.js +32 -0
- data/public/_components/@socketry/syntax/Syntax/Language/basic.js +232 -0
- data/public/_components/@socketry/syntax/Syntax/Language/c++.js +1 -0
- data/public/_components/@socketry/syntax/Syntax/Language/c.js +1 -0
- data/public/_components/@socketry/syntax/Syntax/Language/clang.js +201 -0
- data/public/_components/@socketry/syntax/Syntax/Language/cpp.js +1 -0
- data/public/_components/@socketry/syntax/Syntax/Language/csharp.js +166 -0
- data/public/_components/@socketry/syntax/Syntax/Language/css.js +244 -0
- data/public/_components/@socketry/syntax/Syntax/Language/diff.js +24 -0
- data/public/_components/@socketry/syntax/Syntax/Language/go.js +135 -0
- data/public/_components/@socketry/syntax/Syntax/Language/haskell.js +110 -0
- data/public/_components/@socketry/syntax/Syntax/Language/html.js +69 -0
- data/public/_components/@socketry/syntax/Syntax/Language/io.js +68 -0
- data/public/_components/@socketry/syntax/Syntax/Language/java.js +134 -0
- data/public/_components/@socketry/syntax/Syntax/Language/javascript.js +89 -0
- data/public/_components/@socketry/syntax/Syntax/Language/json.js +36 -0
- data/public/_components/@socketry/syntax/Syntax/Language/lisp.js +38 -0
- data/public/_components/@socketry/syntax/Syntax/Language/lua.js +87 -0
- data/public/_components/@socketry/syntax/Syntax/Language/markdown.js +112 -0
- data/public/_components/@socketry/syntax/Syntax/Language/nginx.js +37 -0
- data/public/_components/@socketry/syntax/Syntax/Language/objective-c.js +1 -0
- data/public/_components/@socketry/syntax/Syntax/Language/ocaml.js +225 -0
- data/public/_components/@socketry/syntax/Syntax/Language/pascal.js +166 -0
- data/public/_components/@socketry/syntax/Syntax/Language/patch.js +2 -0
- data/public/_components/@socketry/syntax/Syntax/Language/perl5.js +317 -0
- data/public/_components/@socketry/syntax/Syntax/Language/php-script.js +112 -0
- data/public/_components/@socketry/syntax/Syntax/Language/php.js +18 -0
- data/public/_components/@socketry/syntax/Syntax/Language/plain.js +20 -0
- data/public/_components/@socketry/syntax/Syntax/Language/protobuf.js +77 -0
- data/public/_components/@socketry/syntax/Syntax/Language/python.js +208 -0
- data/public/_components/@socketry/syntax/Syntax/Language/ruby.js +124 -0
- data/public/_components/@socketry/syntax/Syntax/Language/scala.js +81 -0
- data/public/_components/@socketry/syntax/Syntax/Language/smalltalk.js +30 -0
- data/public/_components/@socketry/syntax/Syntax/Language/sql.js +865 -0
- data/public/_components/@socketry/syntax/Syntax/Language/super-collider.js +70 -0
- data/public/_components/@socketry/syntax/Syntax/Language/swift.js +176 -0
- data/public/_components/@socketry/syntax/Syntax/Language/xml.js +76 -0
- data/public/_components/@socketry/syntax/Syntax/Language/xrb.js +33 -0
- data/public/_components/@socketry/syntax/Syntax/Language/yaml.js +29 -0
- data/public/_components/@socketry/syntax/Syntax/Language.js +276 -0
- data/public/_components/@socketry/syntax/Syntax/Loader.js +78 -0
- data/public/_components/@socketry/syntax/Syntax/Match.js +546 -0
- data/public/_components/@socketry/syntax/Syntax/Rule.js +306 -0
- data/public/_components/@socketry/syntax/Syntax.js +356 -0
- data/public/_components/@socketry/syntax/bin/syntax-ast.js +42 -0
- data/public/_components/@socketry/syntax/examples/_template.html +53 -0
- data/public/_components/@socketry/syntax/examples/apache.html +72 -0
- data/public/_components/@socketry/syntax/examples/applescript.html +72 -0
- data/public/_components/@socketry/syntax/examples/assembly.html +74 -0
- data/public/_components/@socketry/syntax/examples/bash.html +90 -0
- data/public/_components/@socketry/syntax/examples/basic.html +87 -0
- data/public/_components/@socketry/syntax/examples/c.html +141 -0
- data/public/_components/@socketry/syntax/examples/clang.html +202 -0
- data/public/_components/@socketry/syntax/examples/csharp.html +110 -0
- data/public/_components/@socketry/syntax/examples/css-colors.html +179 -0
- data/public/_components/@socketry/syntax/examples/custom-theme.html +155 -0
- data/public/_components/@socketry/syntax/examples/diff.html +142 -0
- data/public/_components/@socketry/syntax/examples/examples.css +216 -0
- data/public/_components/@socketry/syntax/examples/go.html +413 -0
- data/public/_components/@socketry/syntax/examples/haskell.html +373 -0
- data/public/_components/@socketry/syntax/examples/html.html +316 -0
- data/public/_components/@socketry/syntax/examples/index.html +97 -0
- data/public/_components/@socketry/syntax/examples/io.html +552 -0
- data/public/_components/@socketry/syntax/examples/java.html +786 -0
- data/public/_components/@socketry/syntax/examples/javascript.html +199 -0
- data/public/_components/@socketry/syntax/examples/json.html +150 -0
- data/public/_components/@socketry/syntax/examples/lisp.html +476 -0
- data/public/_components/@socketry/syntax/examples/lua.html +737 -0
- data/public/_components/@socketry/syntax/examples/markdown.html +121 -0
- data/public/_components/@socketry/syntax/examples/mixed.html +306 -0
- data/public/_components/@socketry/syntax/examples/nginx.html +554 -0
- data/public/_components/@socketry/syntax/examples/ocaml.html +596 -0
- data/public/_components/@socketry/syntax/examples/pascal.html +762 -0
- data/public/_components/@socketry/syntax/examples/perl5.html +488 -0
- data/public/_components/@socketry/syntax/examples/php-script.html +142 -0
- data/public/_components/@socketry/syntax/examples/php.html +95 -0
- data/public/_components/@socketry/syntax/examples/plain.html +222 -0
- data/public/_components/@socketry/syntax/examples/protobuf.html +405 -0
- data/public/_components/@socketry/syntax/examples/python.html +82 -0
- data/public/_components/@socketry/syntax/examples/readme.md +79 -0
- data/public/_components/@socketry/syntax/examples/ruby.html +58 -0
- data/public/_components/@socketry/syntax/examples/scala.html +41 -0
- data/public/_components/@socketry/syntax/examples/smalltalk.html +436 -0
- data/public/_components/@socketry/syntax/examples/sql.html +373 -0
- data/public/_components/@socketry/syntax/examples/super-collider.html +55 -0
- data/public/_components/@socketry/syntax/examples/swift.html +176 -0
- data/public/_components/@socketry/syntax/examples/wrap-demo.html +103 -0
- data/public/_components/@socketry/syntax/examples/xml.html +112 -0
- data/public/_components/@socketry/syntax/examples/xrb.html +37 -0
- data/public/_components/@socketry/syntax/examples/yaml.html +72 -0
- data/public/_components/@socketry/syntax/license.md +21 -0
- data/public/_components/@socketry/syntax/package-lock.json +834 -0
- data/public/_components/@socketry/syntax/package.json +43 -0
- data/public/_components/@socketry/syntax/readme.md +162 -0
- data/public/_components/@socketry/syntax/test/Syntax/CodeElement.js +306 -0
- data/public/_components/@socketry/syntax/test/Syntax/ErrorHandling.js +85 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/apache.js +153 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/applescript.js +198 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/assembly.js +209 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/bash-script.js +225 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/bash.js +162 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/basic.js +265 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/clang.js +390 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/csharp.js +436 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/css.js +431 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/diff.js +206 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/go.js +386 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/haskell.js +454 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/html.js +111 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/io.js +229 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/java.js +362 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/javascript.js +101 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/json.js +101 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/lisp.js +224 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/lua.js +307 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/markdown.js +163 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/nginx.js +267 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/ocaml.js +299 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/pascal.js +311 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/perl5.js +333 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/php-script.js +197 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/php.js +92 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/plain.js +327 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/protobuf.js +294 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/python.js +213 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/ruby.js +70 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/scala.js +75 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/smalltalk.js +223 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/sql.js +281 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/super-collider.js +66 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/swift.js +71 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/xml.js +170 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/xrb.js +57 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language/yaml.js +123 -0
- data/public/_components/@socketry/syntax/test/Syntax/Language.js +62 -0
- data/public/_components/@socketry/syntax/test/Syntax/Match.js +40 -0
- data/public/_components/@socketry/syntax/test/Syntax/Rule.js +251 -0
- data/public/_components/@socketry/syntax/test/Syntax.js +38 -0
- data/public/_components/@socketry/syntax/test/helpers/ast-matcher.js +90 -0
- data/public/_components/@socketry/syntax/themes/base/apache.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/applescript.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/assembly.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/bash.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/basic.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/c.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/clang.css +0 -0
- data/public/_components/@socketry/syntax/themes/base/csharp.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/css.css +22 -0
- data/public/_components/@socketry/syntax/themes/base/diff.css +48 -0
- data/public/_components/@socketry/syntax/themes/base/go.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/haskell.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/html.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/io.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/java.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/javascript.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/json.css +41 -0
- data/public/_components/@socketry/syntax/themes/base/lisp.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/lua.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/markdown.css +16 -0
- data/public/_components/@socketry/syntax/themes/base/nginx.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/ocaml.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/pascal.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/perl5.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/php-script.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/php.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/plain.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/protobuf.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/python.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/ruby.css +23 -0
- data/public/_components/@socketry/syntax/themes/base/scala.css +3 -0
- data/public/_components/@socketry/syntax/themes/base/smalltalk.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/sql.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/super-collider.css +33 -0
- data/public/_components/@socketry/syntax/themes/base/swift.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/syntax.css +63 -0
- data/public/_components/@socketry/syntax/themes/base/xml.css +1 -0
- data/public/_components/@socketry/syntax/themes/base/xrb.css +29 -0
- data/public/_components/@socketry/syntax/themes/base/yaml.css +1 -0
- data/public/_components/@socketry/syntax/themes/theming.md +233 -0
- data/public/_components/@socketry/syntax/update-examples.js +135 -0
- data/public/_static/index.css +593 -0
- data/public/application.js +147 -0
- data/readme.md +69 -0
- data/releases.md +3 -0
- data/templates/code.xrb +12 -0
- data/templates/default.xrb +5 -0
- data/templates/image.xrb +8 -0
- data/templates/section.xrb +5 -0
- data/templates/title.xrb +8 -0
- data/templates/translation.xrb +8 -0
- data/templates/two_column.xrb +8 -0
- metadata +280 -0
|
@@ -0,0 +1,786 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
+
<title>Java Examples - @socketry/syntax</title>
|
|
7
|
+
<link rel="stylesheet" href="examples.css">
|
|
8
|
+
</head>
|
|
9
|
+
<body>
|
|
10
|
+
<header>
|
|
11
|
+
<h1>Java Examples</h1>
|
|
12
|
+
<p class="subtitle">Object-oriented programming with Java</p>
|
|
13
|
+
</header>
|
|
14
|
+
|
|
15
|
+
<nav>
|
|
16
|
+
<a href="index.html">Back to Examples</a>
|
|
17
|
+
<a href="javascript.html">JavaScript</a>
|
|
18
|
+
<a href="scala.html">Scala</a>
|
|
19
|
+
</nav>
|
|
20
|
+
|
|
21
|
+
<div class="example">
|
|
22
|
+
<h2>Basic Class Definition</h2>
|
|
23
|
+
<p class="description">Simple class example with constructors, getters, and setters:</p>
|
|
24
|
+
|
|
25
|
+
<pre><code class="language-java">// Simple class example
|
|
26
|
+
public class Person {
|
|
27
|
+
// Instance variables
|
|
28
|
+
private String name;
|
|
29
|
+
private int age;
|
|
30
|
+
|
|
31
|
+
// Constructor
|
|
32
|
+
public Person(String name, int age) {
|
|
33
|
+
this.name = name;
|
|
34
|
+
this.age = age;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
// Getter methods
|
|
38
|
+
public String getName() {
|
|
39
|
+
return name;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
public int getAge() {
|
|
43
|
+
return age;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// Setter methods
|
|
47
|
+
public void setName(String name) {
|
|
48
|
+
this.name = name;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
public void setAge(int age) {
|
|
52
|
+
if (age >= 0) {
|
|
53
|
+
this.age = age;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
</code></pre>
|
|
58
|
+
</div>
|
|
59
|
+
|
|
60
|
+
<div class="example">
|
|
61
|
+
<h2>Control Flow</h2>
|
|
62
|
+
<p class="description">If-else statements, switch, and ternary operators:</p>
|
|
63
|
+
|
|
64
|
+
<pre><code class="language-java">public class ControlFlow {
|
|
65
|
+
// if-else statement
|
|
66
|
+
public static String checkNumber(int num) {
|
|
67
|
+
if (num > 0) {
|
|
68
|
+
return "positive";
|
|
69
|
+
} else if (num < 0) {
|
|
70
|
+
return "negative";
|
|
71
|
+
} else {
|
|
72
|
+
return "zero";
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
// switch statement
|
|
77
|
+
public static String getDayName(int day) {
|
|
78
|
+
switch (day) {
|
|
79
|
+
case 1:
|
|
80
|
+
return "Monday";
|
|
81
|
+
case 2:
|
|
82
|
+
return "Tuesday";
|
|
83
|
+
case 3:
|
|
84
|
+
return "Wednesday";
|
|
85
|
+
case 4:
|
|
86
|
+
return "Thursday";
|
|
87
|
+
case 5:
|
|
88
|
+
return "Friday";
|
|
89
|
+
case 6:
|
|
90
|
+
return "Saturday";
|
|
91
|
+
case 7:
|
|
92
|
+
return "Sunday";
|
|
93
|
+
default:
|
|
94
|
+
return "Invalid day";
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// Ternary operator
|
|
99
|
+
public static int max(int a, int b) {
|
|
100
|
+
return (a > b) ? a : b;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
</code></pre>
|
|
104
|
+
</div>
|
|
105
|
+
|
|
106
|
+
<div class="example">
|
|
107
|
+
<h2>Loops</h2>
|
|
108
|
+
<p class="description">For loops, while loops, and enhanced for loops:</p>
|
|
109
|
+
|
|
110
|
+
<pre><code class="language-java">public class Loops {
|
|
111
|
+
// for loop
|
|
112
|
+
public static void printNumbers() {
|
|
113
|
+
for (int i = 0; i < 10; i++) {
|
|
114
|
+
System.out.println(i);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
// enhanced for loop (for-each)
|
|
119
|
+
public static void printArray(String[] array) {
|
|
120
|
+
for (String item : array) {
|
|
121
|
+
System.out.println(item);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
// while loop
|
|
126
|
+
public static int factorial(int n) {
|
|
127
|
+
int result = 1;
|
|
128
|
+
int i = 1;
|
|
129
|
+
while (i <= n) {
|
|
130
|
+
result *= i;
|
|
131
|
+
i++;
|
|
132
|
+
}
|
|
133
|
+
return result;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
// do-while loop
|
|
137
|
+
public static void doWhileExample() {
|
|
138
|
+
int i = 0;
|
|
139
|
+
do {
|
|
140
|
+
System.out.println(i);
|
|
141
|
+
i++;
|
|
142
|
+
} while (i < 5);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
// break and continue
|
|
146
|
+
public static void breakContinueExample() {
|
|
147
|
+
for (int i = 0; i < 10; i++) {
|
|
148
|
+
if (i == 3) {
|
|
149
|
+
continue; // Skip 3
|
|
150
|
+
}
|
|
151
|
+
if (i == 7) {
|
|
152
|
+
break; // Stop at 7
|
|
153
|
+
}
|
|
154
|
+
System.out.println(i);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
</code></pre>
|
|
159
|
+
</div>
|
|
160
|
+
|
|
161
|
+
<div class="example">
|
|
162
|
+
<h2>Arrays and Collections</h2>
|
|
163
|
+
<p class="description">Working with arrays, ArrayList, HashMap, and HashSet:</p>
|
|
164
|
+
|
|
165
|
+
<pre><code class="language-java">import java.util.ArrayList;
|
|
166
|
+
import java.util.HashMap;
|
|
167
|
+
import java.util.HashSet;
|
|
168
|
+
|
|
169
|
+
public class Collections {
|
|
170
|
+
// Arrays
|
|
171
|
+
public static void arrayExample() {
|
|
172
|
+
int[] numbers = {1, 2, 3, 4, 5};
|
|
173
|
+
String[] names = new String[3];
|
|
174
|
+
names[0] = "Alice";
|
|
175
|
+
names[1] = "Bob";
|
|
176
|
+
names[2] = "Charlie";
|
|
177
|
+
|
|
178
|
+
// Multi-dimensional array
|
|
179
|
+
int[][] matrix = {
|
|
180
|
+
{1, 2, 3},
|
|
181
|
+
{4, 5, 6},
|
|
182
|
+
{7, 8, 9}
|
|
183
|
+
};
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
// ArrayList
|
|
187
|
+
public static void arrayListExample() {
|
|
188
|
+
ArrayList<String> list = new ArrayList<>();
|
|
189
|
+
list.add("Apple");
|
|
190
|
+
list.add("Banana");
|
|
191
|
+
list.add("Cherry");
|
|
192
|
+
|
|
193
|
+
// Iterate
|
|
194
|
+
for (String fruit : list) {
|
|
195
|
+
System.out.println(fruit);
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
// Access by index
|
|
199
|
+
String first = list.get(0);
|
|
200
|
+
list.remove(1);
|
|
201
|
+
int size = list.size();
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
// HashMap
|
|
205
|
+
public static void hashMapExample() {
|
|
206
|
+
HashMap<String, Integer> map = new HashMap<>();
|
|
207
|
+
map.put("Alice", 30);
|
|
208
|
+
map.put("Bob", 25);
|
|
209
|
+
map.put("Charlie", 35);
|
|
210
|
+
|
|
211
|
+
int age = map.get("Alice");
|
|
212
|
+
boolean hasKey = map.containsKey("Bob");
|
|
213
|
+
|
|
214
|
+
// Iterate
|
|
215
|
+
for (String name : map.keySet()) {
|
|
216
|
+
System.out.println(name + ": " + map.get(name));
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
// HashSet
|
|
221
|
+
public static void hashSetExample() {
|
|
222
|
+
HashSet<Integer> set = new HashSet<>();
|
|
223
|
+
set.add(1);
|
|
224
|
+
set.add(2);
|
|
225
|
+
set.add(3);
|
|
226
|
+
set.add(2); // Duplicate ignored
|
|
227
|
+
|
|
228
|
+
boolean contains = set.contains(2);
|
|
229
|
+
set.remove(3);
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
</code></pre>
|
|
233
|
+
</div>
|
|
234
|
+
|
|
235
|
+
<div class="example">
|
|
236
|
+
<h2>Exception Handling</h2>
|
|
237
|
+
<p class="description">Try-catch-finally, try-with-resources, and custom exceptions:</p>
|
|
238
|
+
|
|
239
|
+
<pre><code class="language-java">public class ExceptionHandling {
|
|
240
|
+
// Try-catch
|
|
241
|
+
public static int divide(int a, int b) {
|
|
242
|
+
try {
|
|
243
|
+
return a / b;
|
|
244
|
+
} catch (ArithmeticException e) {
|
|
245
|
+
System.err.println("Cannot divide by zero");
|
|
246
|
+
return 0;
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
// Try-catch-finally
|
|
251
|
+
public static void readFile(String filename) {
|
|
252
|
+
FileReader reader = null;
|
|
253
|
+
try {
|
|
254
|
+
reader = new FileReader(filename);
|
|
255
|
+
// Read file...
|
|
256
|
+
} catch (FileNotFoundException e) {
|
|
257
|
+
System.err.println("File not found: " + filename);
|
|
258
|
+
} catch (IOException e) {
|
|
259
|
+
System.err.println("Error reading file");
|
|
260
|
+
} finally {
|
|
261
|
+
if (reader != null) {
|
|
262
|
+
try {
|
|
263
|
+
reader.close();
|
|
264
|
+
} catch (IOException e) {
|
|
265
|
+
// Ignore
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
// Try-with-resources (Java 7+)
|
|
272
|
+
public static void readFileModern(String filename) {
|
|
273
|
+
try (FileReader reader = new FileReader(filename)) {
|
|
274
|
+
// Read file...
|
|
275
|
+
} catch (IOException e) {
|
|
276
|
+
System.err.println("Error: " + e.getMessage());
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
// Throwing exceptions
|
|
281
|
+
public static void validateAge(int age) throws IllegalArgumentException {
|
|
282
|
+
if (age < 0 || age > 150) {
|
|
283
|
+
throw new IllegalArgumentException("Invalid age: " + age);
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
// Custom exception
|
|
288
|
+
public static class InvalidInputException extends Exception {
|
|
289
|
+
public InvalidInputException(String message) {
|
|
290
|
+
super(message);
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
</code></pre>
|
|
295
|
+
</div>
|
|
296
|
+
|
|
297
|
+
<div class="example">
|
|
298
|
+
<h2>Inheritance</h2>
|
|
299
|
+
<p class="description">Base classes, derived classes, and method overriding:</p>
|
|
300
|
+
|
|
301
|
+
<pre><code class="language-java">// Base class
|
|
302
|
+
public class Animal {
|
|
303
|
+
protected String name;
|
|
304
|
+
|
|
305
|
+
public Animal(String name) {
|
|
306
|
+
this.name = name;
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
public void eat() {
|
|
310
|
+
System.out.println(name + " is eating");
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
public void sleep() {
|
|
314
|
+
System.out.println(name + " is sleeping");
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
// Derived class
|
|
319
|
+
public class Dog extends Animal {
|
|
320
|
+
private String breed;
|
|
321
|
+
|
|
322
|
+
public Dog(String name, String breed) {
|
|
323
|
+
super(name); // Call parent constructor
|
|
324
|
+
this.breed = breed;
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
// Override method
|
|
328
|
+
@Override
|
|
329
|
+
public void eat() {
|
|
330
|
+
System.out.println(name + " the dog is eating");
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
// New method
|
|
334
|
+
public void bark() {
|
|
335
|
+
System.out.println(name + " says: Woof!");
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
// Another derived class
|
|
340
|
+
public class Cat extends Animal {
|
|
341
|
+
public Cat(String name) {
|
|
342
|
+
super(name);
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
@Override
|
|
346
|
+
public void eat() {
|
|
347
|
+
System.out.println(name + " the cat is eating");
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
public void meow() {
|
|
351
|
+
System.out.println(name + " says: Meow!");
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
</code></pre>
|
|
355
|
+
</div>
|
|
356
|
+
|
|
357
|
+
<div class="example">
|
|
358
|
+
<h2>Interfaces</h2>
|
|
359
|
+
<p class="description">Interface definitions and implementations:</p>
|
|
360
|
+
|
|
361
|
+
<pre><code class="language-java">// Interface definition
|
|
362
|
+
public interface Drawable {
|
|
363
|
+
void draw();
|
|
364
|
+
void setColor(String color);
|
|
365
|
+
String getColor();
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
// Another interface
|
|
369
|
+
public interface Resizable {
|
|
370
|
+
void resize(double factor);
|
|
371
|
+
}
|
|
372
|
+
|
|
373
|
+
// Implementing single interface
|
|
374
|
+
public class Circle implements Drawable {
|
|
375
|
+
private double radius;
|
|
376
|
+
private String color;
|
|
377
|
+
|
|
378
|
+
public Circle(double radius) {
|
|
379
|
+
this.radius = radius;
|
|
380
|
+
this.color = "black";
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
@Override
|
|
384
|
+
public void draw() {
|
|
385
|
+
System.out.println("Drawing a " + color + " circle");
|
|
386
|
+
}
|
|
387
|
+
|
|
388
|
+
@Override
|
|
389
|
+
public void setColor(String color) {
|
|
390
|
+
this.color = color;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
@Override
|
|
394
|
+
public String getColor() {
|
|
395
|
+
return color;
|
|
396
|
+
}
|
|
397
|
+
}
|
|
398
|
+
|
|
399
|
+
// Implementing multiple interfaces
|
|
400
|
+
public class Rectangle implements Drawable, Resizable {
|
|
401
|
+
private double width;
|
|
402
|
+
private double height;
|
|
403
|
+
private String color;
|
|
404
|
+
|
|
405
|
+
public Rectangle(double width, double height) {
|
|
406
|
+
this.width = width;
|
|
407
|
+
this.height = height;
|
|
408
|
+
this.color = "black";
|
|
409
|
+
}
|
|
410
|
+
|
|
411
|
+
@Override
|
|
412
|
+
public void draw() {
|
|
413
|
+
System.out.println("Drawing a " + color + " rectangle");
|
|
414
|
+
}
|
|
415
|
+
|
|
416
|
+
@Override
|
|
417
|
+
public void setColor(String color) {
|
|
418
|
+
this.color = color;
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
@Override
|
|
422
|
+
public String getColor() {
|
|
423
|
+
return color;
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
@Override
|
|
427
|
+
public void resize(double factor) {
|
|
428
|
+
width *= factor;
|
|
429
|
+
height *= factor;
|
|
430
|
+
}
|
|
431
|
+
}
|
|
432
|
+
</code></pre>
|
|
433
|
+
</div>
|
|
434
|
+
|
|
435
|
+
<div class="example">
|
|
436
|
+
<h2>Abstract Classes</h2>
|
|
437
|
+
<p class="description">Abstract classes with abstract and concrete methods:</p>
|
|
438
|
+
|
|
439
|
+
<pre><code class="language-java">// Abstract class
|
|
440
|
+
public abstract class Shape {
|
|
441
|
+
protected String color;
|
|
442
|
+
|
|
443
|
+
public Shape(String color) {
|
|
444
|
+
this.color = color;
|
|
445
|
+
}
|
|
446
|
+
|
|
447
|
+
// Abstract method (no implementation)
|
|
448
|
+
public abstract double area();
|
|
449
|
+
|
|
450
|
+
// Concrete method
|
|
451
|
+
public void printArea() {
|
|
452
|
+
System.out.println("Area: " + area());
|
|
453
|
+
}
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
// Concrete implementation
|
|
457
|
+
public class Square extends Shape {
|
|
458
|
+
private double side;
|
|
459
|
+
|
|
460
|
+
public Square(double side, String color) {
|
|
461
|
+
super(color);
|
|
462
|
+
this.side = side;
|
|
463
|
+
}
|
|
464
|
+
|
|
465
|
+
@Override
|
|
466
|
+
public double area() {
|
|
467
|
+
return side * side;
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
|
|
471
|
+
public class Triangle extends Shape {
|
|
472
|
+
private double base;
|
|
473
|
+
private double height;
|
|
474
|
+
|
|
475
|
+
public Triangle(double base, double height, String color) {
|
|
476
|
+
super(color);
|
|
477
|
+
this.base = base;
|
|
478
|
+
this.height = height;
|
|
479
|
+
}
|
|
480
|
+
|
|
481
|
+
@Override
|
|
482
|
+
public double area() {
|
|
483
|
+
return 0.5 * base * height;
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
</code></pre>
|
|
487
|
+
</div>
|
|
488
|
+
|
|
489
|
+
<div class="example">
|
|
490
|
+
<h2>Generics</h2>
|
|
491
|
+
<p class="description">Generic classes, methods, and bounded type parameters:</p>
|
|
492
|
+
|
|
493
|
+
<pre><code class="language-java">// Generic class
|
|
494
|
+
public class Box<T> {
|
|
495
|
+
private T value;
|
|
496
|
+
|
|
497
|
+
public void set(T value) {
|
|
498
|
+
this.value = value;
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
public T get() {
|
|
502
|
+
return value;
|
|
503
|
+
}
|
|
504
|
+
}
|
|
505
|
+
|
|
506
|
+
// Using generic class
|
|
507
|
+
public static void genericExample() {
|
|
508
|
+
Box<String> stringBox = new Box<>();
|
|
509
|
+
stringBox.set("Hello");
|
|
510
|
+
String s = stringBox.get();
|
|
511
|
+
|
|
512
|
+
Box<Integer> intBox = new Box<>();
|
|
513
|
+
intBox.set(42);
|
|
514
|
+
int i = intBox.get();
|
|
515
|
+
}
|
|
516
|
+
|
|
517
|
+
// Generic method
|
|
518
|
+
public static <T> void printArray(T[] array) {
|
|
519
|
+
for (T element : array) {
|
|
520
|
+
System.out.println(element);
|
|
521
|
+
}
|
|
522
|
+
}
|
|
523
|
+
|
|
524
|
+
// Bounded type parameters
|
|
525
|
+
public static <T extends Comparable<T>> T max(T a, T b) {
|
|
526
|
+
return (a.compareTo(b) > 0) ? a : b;
|
|
527
|
+
}
|
|
528
|
+
|
|
529
|
+
// Generic interface
|
|
530
|
+
public interface Pair<K, V> {
|
|
531
|
+
K getKey();
|
|
532
|
+
V getValue();
|
|
533
|
+
}
|
|
534
|
+
</code></pre>
|
|
535
|
+
</div>
|
|
536
|
+
|
|
537
|
+
<div class="example">
|
|
538
|
+
<h2>Enumerations</h2>
|
|
539
|
+
<p class="description">Simple and complex enum definitions:</p>
|
|
540
|
+
|
|
541
|
+
<pre><code class="language-java">// Simple enum
|
|
542
|
+
public enum Day {
|
|
543
|
+
MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
|
|
544
|
+
}
|
|
545
|
+
|
|
546
|
+
// Enum with fields and methods
|
|
547
|
+
public enum Planet {
|
|
548
|
+
MERCURY(3.303e+23, 2.4397e6),
|
|
549
|
+
VENUS(4.869e+24, 6.0518e6),
|
|
550
|
+
EARTH(5.976e+24, 6.37814e6),
|
|
551
|
+
MARS(6.421e+23, 3.3972e6);
|
|
552
|
+
|
|
553
|
+
private final double mass; // in kilograms
|
|
554
|
+
private final double radius; // in meters
|
|
555
|
+
|
|
556
|
+
Planet(double mass, double radius) {
|
|
557
|
+
this.mass = mass;
|
|
558
|
+
this.radius = radius;
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
public double getMass() {
|
|
562
|
+
return mass;
|
|
563
|
+
}
|
|
564
|
+
|
|
565
|
+
public double getRadius() {
|
|
566
|
+
return radius;
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
public double surfaceGravity() {
|
|
570
|
+
final double G = 6.67300E-11;
|
|
571
|
+
return G * mass / (radius * radius);
|
|
572
|
+
}
|
|
573
|
+
}
|
|
574
|
+
|
|
575
|
+
// Using enums
|
|
576
|
+
public static void enumExample() {
|
|
577
|
+
Day today = Day.MONDAY;
|
|
578
|
+
|
|
579
|
+
switch (today) {
|
|
580
|
+
case MONDAY:
|
|
581
|
+
System.out.println("Start of week");
|
|
582
|
+
break;
|
|
583
|
+
case FRIDAY:
|
|
584
|
+
System.out.println("Almost weekend!");
|
|
585
|
+
break;
|
|
586
|
+
case SATURDAY:
|
|
587
|
+
case SUNDAY:
|
|
588
|
+
System.out.println("Weekend!");
|
|
589
|
+
break;
|
|
590
|
+
default:
|
|
591
|
+
System.out.println("Midweek");
|
|
592
|
+
}
|
|
593
|
+
|
|
594
|
+
double earthGravity = Planet.EARTH.surfaceGravity();
|
|
595
|
+
}
|
|
596
|
+
</code></pre>
|
|
597
|
+
</div>
|
|
598
|
+
|
|
599
|
+
<div class="example">
|
|
600
|
+
<h2>Static and Final</h2>
|
|
601
|
+
<p class="description">Static members, constants, and final classes:</p>
|
|
602
|
+
|
|
603
|
+
<pre><code class="language-java">public class MathUtils {
|
|
604
|
+
// Static constant
|
|
605
|
+
public static final double PI = 3.14159;
|
|
606
|
+
|
|
607
|
+
// Static variable
|
|
608
|
+
private static int instanceCount = 0;
|
|
609
|
+
|
|
610
|
+
// Static method
|
|
611
|
+
public static int add(int a, int b) {
|
|
612
|
+
return a + b;
|
|
613
|
+
}
|
|
614
|
+
|
|
615
|
+
// Static initializer block
|
|
616
|
+
static {
|
|
617
|
+
System.out.println("MathUtils class loaded");
|
|
618
|
+
instanceCount = 0;
|
|
619
|
+
}
|
|
620
|
+
|
|
621
|
+
// Instance method
|
|
622
|
+
public MathUtils() {
|
|
623
|
+
instanceCount++;
|
|
624
|
+
}
|
|
625
|
+
|
|
626
|
+
public static int getInstanceCount() {
|
|
627
|
+
return instanceCount;
|
|
628
|
+
}
|
|
629
|
+
}
|
|
630
|
+
|
|
631
|
+
// Using static members
|
|
632
|
+
public static void staticExample() {
|
|
633
|
+
double circumference = 2 * MathUtils.PI * 5;
|
|
634
|
+
int sum = MathUtils.add(3, 4);
|
|
635
|
+
|
|
636
|
+
MathUtils m1 = new MathUtils();
|
|
637
|
+
MathUtils m2 = new MathUtils();
|
|
638
|
+
int count = MathUtils.getInstanceCount(); // 2
|
|
639
|
+
}
|
|
640
|
+
|
|
641
|
+
// Final class (cannot be extended)
|
|
642
|
+
public final class ImmutableClass {
|
|
643
|
+
private final String value;
|
|
644
|
+
|
|
645
|
+
public ImmutableClass(String value) {
|
|
646
|
+
this.value = value;
|
|
647
|
+
}
|
|
648
|
+
|
|
649
|
+
public String getValue() {
|
|
650
|
+
return value;
|
|
651
|
+
}
|
|
652
|
+
}
|
|
653
|
+
</code></pre>
|
|
654
|
+
</div>
|
|
655
|
+
|
|
656
|
+
<div class="example">
|
|
657
|
+
<h2>Lambda Expressions (Java 8+)</h2>
|
|
658
|
+
<p class="description">Functional interfaces, lambdas, and method references:</p>
|
|
659
|
+
|
|
660
|
+
<pre><code class="language-java">import java.util.Arrays;
|
|
661
|
+
import java.util.List;
|
|
662
|
+
import java.util.function.Predicate;
|
|
663
|
+
|
|
664
|
+
public class LambdaExamples {
|
|
665
|
+
// Functional interface
|
|
666
|
+
@FunctionalInterface
|
|
667
|
+
interface Operation {
|
|
668
|
+
int apply(int a, int b);
|
|
669
|
+
}
|
|
670
|
+
|
|
671
|
+
public static void lambdaExample() {
|
|
672
|
+
// Lambda expression
|
|
673
|
+
Operation add = (a, b) -> a + b;
|
|
674
|
+
Operation multiply = (a, b) -> a * b;
|
|
675
|
+
|
|
676
|
+
System.out.println(add.apply(5, 3)); // 8
|
|
677
|
+
System.out.println(multiply.apply(5, 3)); // 15
|
|
678
|
+
|
|
679
|
+
// Using lambdas with collections
|
|
680
|
+
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
|
|
681
|
+
|
|
682
|
+
// forEach with lambda
|
|
683
|
+
names.forEach(name -> System.out.println(name));
|
|
684
|
+
|
|
685
|
+
// Filter with lambda
|
|
686
|
+
names.stream()
|
|
687
|
+
.filter(name -> name.startsWith("A"))
|
|
688
|
+
.forEach(System.out::println);
|
|
689
|
+
|
|
690
|
+
// Map with lambda
|
|
691
|
+
names.stream()
|
|
692
|
+
.map(name -> name.toUpperCase())
|
|
693
|
+
.forEach(System.out::println);
|
|
694
|
+
|
|
695
|
+
// Reduce with lambda
|
|
696
|
+
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
|
|
697
|
+
int sum = numbers.stream()
|
|
698
|
+
.reduce(0, (a, b) -> a + b);
|
|
699
|
+
}
|
|
700
|
+
|
|
701
|
+
// Method reference
|
|
702
|
+
public static void methodReferenceExample() {
|
|
703
|
+
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
|
|
704
|
+
|
|
705
|
+
// Instance method reference
|
|
706
|
+
names.forEach(System.out::println);
|
|
707
|
+
|
|
708
|
+
// Static method reference
|
|
709
|
+
names.stream()
|
|
710
|
+
.map(String::toUpperCase)
|
|
711
|
+
.forEach(System.out::println);
|
|
712
|
+
}
|
|
713
|
+
}
|
|
714
|
+
</code></pre>
|
|
715
|
+
</div>
|
|
716
|
+
|
|
717
|
+
<div class="example">
|
|
718
|
+
<h2>Streams (Java 8+)</h2>
|
|
719
|
+
<p class="description">Stream API for functional-style operations on collections:</p>
|
|
720
|
+
|
|
721
|
+
<pre><code class="language-java">import java.util.*;
|
|
722
|
+
import java.util.stream.*;
|
|
723
|
+
|
|
724
|
+
public class StreamExamples {
|
|
725
|
+
public static void streamExample() {
|
|
726
|
+
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
|
|
727
|
+
|
|
728
|
+
// Filter even numbers
|
|
729
|
+
List<Integer> evens = numbers.stream()
|
|
730
|
+
.filter(n -> n % 2 == 0)
|
|
731
|
+
.collect(Collectors.toList());
|
|
732
|
+
|
|
733
|
+
// Map and collect
|
|
734
|
+
List<Integer> squares = numbers.stream()
|
|
735
|
+
.map(n -> n * n)
|
|
736
|
+
.collect(Collectors.toList());
|
|
737
|
+
|
|
738
|
+
// Sum using reduce
|
|
739
|
+
int sum = numbers.stream()
|
|
740
|
+
.reduce(0, Integer::sum);
|
|
741
|
+
|
|
742
|
+
// Find first
|
|
743
|
+
Optional<Integer> first = numbers.stream()
|
|
744
|
+
.filter(n -> n > 5)
|
|
745
|
+
.findFirst();
|
|
746
|
+
|
|
747
|
+
// Count
|
|
748
|
+
long count = numbers.stream()
|
|
749
|
+
.filter(n -> n % 2 == 0)
|
|
750
|
+
.count();
|
|
751
|
+
|
|
752
|
+
// Sorting
|
|
753
|
+
List<String> sorted = Arrays.asList("Charlie", "Alice", "Bob")
|
|
754
|
+
.stream()
|
|
755
|
+
.sorted()
|
|
756
|
+
.collect(Collectors.toList());
|
|
757
|
+
|
|
758
|
+
// Distinct
|
|
759
|
+
List<Integer> distinct = Arrays.asList(1, 2, 2, 3, 3, 3)
|
|
760
|
+
.stream()
|
|
761
|
+
.distinct()
|
|
762
|
+
.collect(Collectors.toList());
|
|
763
|
+
|
|
764
|
+
// Limit and skip
|
|
765
|
+
List<Integer> limited = numbers.stream()
|
|
766
|
+
.skip(3)
|
|
767
|
+
.limit(4)
|
|
768
|
+
.collect(Collectors.toList());
|
|
769
|
+
}
|
|
770
|
+
}
|
|
771
|
+
</code></pre>
|
|
772
|
+
</div>
|
|
773
|
+
|
|
774
|
+
<script type="module">
|
|
775
|
+
import Syntax from '../Syntax.js';
|
|
776
|
+
import registerJava from '../Syntax/Language/java.js';
|
|
777
|
+
|
|
778
|
+
registerJava(Syntax.default);
|
|
779
|
+
|
|
780
|
+
await Syntax.highlight({
|
|
781
|
+
autoUpgrade: true,
|
|
782
|
+
syntax: Syntax.default
|
|
783
|
+
});
|
|
784
|
+
</script>
|
|
785
|
+
</body>
|
|
786
|
+
</html>
|