-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsearch.xml
More file actions
879 lines (817 loc) · 52.4 KB
/
search.xml
File metadata and controls
879 lines (817 loc) · 52.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
<?xml version="1.0" encoding="utf-8"?>
<search>
<entry>
<title>Hello World</title>
<url>/2020/06/19/hello-world/</url>
<content><![CDATA[<p>Welcome to <a href="https://hexo.io/" target="_blank" rel="noopener">Hexo</a>! This is your very first post. Check <a href="https://hexo.io/docs/" target="_blank" rel="noopener">documentation</a> for more info. If you get any problems when using Hexo, you can find the answer in <a href="https://hexo.io/docs/troubleshooting.html" target="_blank" rel="noopener">troubleshooting</a> or you can ask me on <a href="https://github.com/hexojs/hexo/issues" target="_blank" rel="noopener">GitHub</a>.</p>
<a id="more"></a>
<h2 id="Quick-Start"><a href="#Quick-Start" class="headerlink" title="Quick Start"></a>Quick Start</h2><h3 id="Create-a-new-post"><a href="#Create-a-new-post" class="headerlink" title="Create a new post"></a>Create a new post</h3><figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">$ hexo new <span class="string">"My New Post"</span></span><br></pre></td></tr></table></figure>
<p>More info: <a href="https://hexo.io/docs/writing.html" target="_blank" rel="noopener">Writing</a></p>
<h3 id="Run-server"><a href="#Run-server" class="headerlink" title="Run server"></a>Run server</h3><figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">$ hexo server</span><br></pre></td></tr></table></figure>
<p>More info: <a href="https://hexo.io/docs/server.html" target="_blank" rel="noopener">Server</a></p>
<h3 id="Generate-static-files"><a href="#Generate-static-files" class="headerlink" title="Generate static files"></a>Generate static files</h3><figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">$ hexo generate</span><br></pre></td></tr></table></figure>
<p>More info: <a href="https://hexo.io/docs/generating.html" target="_blank" rel="noopener">Generating</a></p>
<h3 id="Deploy-to-remote-sites"><a href="#Deploy-to-remote-sites" class="headerlink" title="Deploy to remote sites"></a>Deploy to remote sites</h3><figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">$ hexo deploy</span><br></pre></td></tr></table></figure>
<p>More info: <a href="https://hexo.io/docs/one-command-deployment.html" target="_blank" rel="noopener">Deployment</a></p>
]]></content>
</entry>
<entry>
<title>java中的匿名函数</title>
<url>/2021/04/11/java%E4%B8%AD%E7%9A%84%E5%8C%BF%E5%90%8D%E5%87%BD%E6%95%B0/</url>
<content><![CDATA[<hr>
<a id="more"></a>
<h3 id="匿名函数的注意点及使用"><a href="#匿名函数的注意点及使用" class="headerlink" title="匿名函数的注意点及使用"></a>匿名函数的注意点及使用</h3><hr>
<p>*例 简单概念</p>
<pre><code>public class Demo_Anonymous {
public static void main(String[] args) {
Person one = new Person();
one.name = "张三";
one.showName();
System.out.println("=====================");
new Person().name="lisa";
new Person().showName(); // 匿名对象只能调用一次 第二次使用则为创新了一个新的匿名对象
}
}
class Person{
String name;
public void showName() {
System.out.println(name);
}
}</code></pre><hr>
<ul>
<li>匿名对象作为方法的参数列表</li>
</ul>
<pre><code>import java.util.Scanner;
public class Demo_06 {
public static void main(String[] args) {
// 匿名对象的方法
// int num = new Scanner(System.in).nextInt();
//
// System.out.println("输出的数字: "+ num);
// 匿名对象 作为方法的参数列表
Anonymous_ways(new Scanner(System.in));
}
public static void Anonymous_ways(Scanner sc) {
int num = sc.nextInt();
System.out.println("输出的数字是: " + num);
}
}</code></pre><hr>
<ul>
<li>匿名方法作为 方法的返回值 </li>
</ul>
<pre><code>
import java.util.Scanner;
public class Deom {
public static void main(String[] args) {
// 匿名对象作为方法的返回值
Scanner sc = methodReturn();
int num = sc.nextInt();
System.out.println("输出的数是: " + num);
//System.out.println(sc.nextInt()); 也可
}
public static Scanner methodReturn() {
return new Scanner(System.in);
}
}
</code></pre>]]></content>
<categories>
<category>Java</category>
</categories>
<tags>
<tag>匿名函数</tag>
</tags>
</entry>
<entry>
<title>java-方法</title>
<url>/2020/07/23/java-%E6%96%B9%E6%B3%95/</url>
<content><![CDATA[<hr>
<a id="more"></a>
<h2 id="1-0-方法"><a href="#1-0-方法" class="headerlink" title="1.0 方法"></a>1.0 方法</h2><hr>
<ul>
<li>方法的使用是为了增加代码的重复利用性 </li>
</ul>
<ol>
<li>方法在Java中相当于一种机制: </li>
</ol>
<p>–某个功能只需要写一遍<br>–在使用这个功能时,只需传入相应的数据<br>–可以完成某个特定的功能,可以重复利用 </p>
<hr>
<ul>
<li>例子:a+b=c 这个功能只需写一遍<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">public class show_function{ </span><br><span class="line">// 类体</span><br><span class="line"> public static void main(String[] args) {</span><br><span class="line"> show_function.sumLnt(10,20);</span><br><span class="line"> show_function.sumLnt(99,20);</span><br><span class="line"> show_function.sumLnt(200,901);</span><br><span class="line"> }</span><br><span class="line"> public static void sumLnt(int a,int b){</span><br><span class="line"> int c= a + b;</span><br><span class="line"> System.out.println(a + " + " + b " = " + c);</span><br><span class="line"> }</span><br><span class="line">}</span><br></pre></td></tr></table></figure>
</li>
</ul>
<hr>
<h4 id="注意:"><a href="#注意:" class="headerlink" title="注意:"></a>注意:</h4><ol>
<li>方法内不能再写方法 </li>
<li>类体内可以定义多个方法 </li>
</ol>
]]></content>
<categories>
<category>java</category>
</categories>
<tags>
<tag>方法</tag>
</tags>
</entry>
<entry>
<title>Scanner</title>
<url>/2021/09/17/Scanner/</url>
<content><![CDATA[<hr>
<a id="more"></a>
<h2 id="Scanner方法"><a href="#Scanner方法" class="headerlink" title="Scanner方法"></a>Scanner方法</h2><hr>
<hr>
<ul>
<li><p>和用户交互的方法</p>
<figure class="highlight java"><table><tr><td class="code"><pre><span class="line"><span class="comment">// 创建一个扫描器对象,用于接收键盘数据</span></span><br><span class="line">Scanner sc = <span class="keyword">new</span> Scanner(System.in);</span><br><span class="line"></span><br><span class="line"><span class="comment">// 判断用户有没有输入字符串</span></span><br><span class="line"> <span class="keyword">if</span>(sc.hasNextIn()){</span><br><span class="line"> <span class="keyword">int</span> a = sc.nextInt();</span><br><span class="line"> System.out.print(a);</span><br><span class="line"> }</span><br><span class="line"><span class="comment">// 属于i/o流 使用完要关闭</span></span><br><span class="line"> sc.close();</span><br></pre></td></tr></table></figure>
</li>
<li><p>next() 不能得到带有空格的字符串</p>
</li>
<li><p>next Line() </p>
<ol>
<li>以Enter为结束符:也就是说方法返回的是输入回车之前的所有字符</li>
<li>可以获取空白</li>
</ol>
</li>
</ul>
<hr>
]]></content>
<categories>
<category>java</category>
</categories>
<tags>
<tag>Scanner</tag>
</tags>
</entry>
<entry>
<title>java中的参数列表</title>
<url>/2021/04/08/%E5%85%B3%E4%BA%8Ejava%E4%B8%AD%E7%9A%84%E5%8F%82%E6%95%B0%E5%88%97%E8%A1%A8/</url>
<content><![CDATA[<h4 id="关于Java中参数列表"><a href="#关于Java中参数列表" class="headerlink" title="关于Java中参数列表"></a>关于Java中参数列表</h4><a id="more"></a>
<h2 id="2021-4-8"><a href="#2021-4-8" class="headerlink" title="2021.4.8"></a>2021.4.8</h2><hr>
<pre><code>
public class Demo_arrylist {
public static void main(String[] args) {
Demo demo = new Demo();
demo.show("小米");
}
}
class Demo{
String name= "华为";
public void show(String name) {
System.out.println(name+ " 的友商是 "+ this.name );
}
}
</code></pre><hr>
<ul>
<li>在 public void show(String name) {} 中加入参数列表 string name 相当于形参,在调用show()方法的时候 需要赋值</li>
<li>在show()方法中调用 demo类的成员变量 可以用this关键字 </li>
</ul>
<hr>
<h5 id="自己的误解:"><a href="#自己的误解:" class="headerlink" title="自己的误解:"></a>自己的误解:</h5><ul>
<li>以为参数列表只是标指 方法中运用的变量 </li>
<li>实质上也可以看作一个对象 万物皆对象</li>
</ul>
<hr>
<p>认知不停 待更新见解…….</p>
]]></content>
<categories>
<category>java</category>
</categories>
<tags>
<tag>参数列表</tag>
</tags>
</entry>
<entry>
<title>java-简谈构造方法</title>
<url>/2020/06/20/java-%E7%AE%80%E8%B0%88%E6%9E%84%E9%80%A0%E6%96%B9%E6%B3%95/</url>
<content><![CDATA[<h2 id="构造方法的三个特点:"><a href="#构造方法的三个特点:" class="headerlink" title="构造方法的三个特点:"></a>构造方法的三个特点:</h2><a id="more"></a>
<p>1.构造方法的名称必须与类的名称相同<br>2.构造方法的前面没有返还类型 : public run(){}<br>3.如果你没有在类中定义构造方法,那么在编译阶段,编译器会自动给出一个构造方法,也就是说,编译器会在编译阶段在字节码文件中补充添加一个构造方法,此构造方法是没有参数的。 </p>
<hr>
<p>教科书上一般定义为:构造方法是为了创建一个对象 晦涩难懂 </p>
<p>另一种简单的的说法: 初始化对象的内部状态 就是说给对象的各个属性赋初值 </p>
<h2 id="范例"><a href="#范例" class="headerlink" title="范例"></a>范例</h2><pre><code>public class test1
{
public static void main(String[] args) {
Student p1 =new Student(18,"jack");
Student p2 =new Student(19,"jack");
p1.printlnof();
p2.getAge();
p2.printlnof();
}
}
class Student{
private int age;
private String name;
public Student(int age,String name) {
this.age=age;
this.name=name;
}
public void printlnof() {
System.out.println("age: "+age+" name: "+name);
}
public void getAge() {
int s=10;
age+=s;
}
}</code></pre><p>// 所谓 构造方法就是 对类的内部进行初始化</p>
]]></content>
<categories>
<category>java</category>
</categories>
<tags>
<tag>构造方法</tag>
</tags>
</entry>
<entry>
<title>markdown-基本语法</title>
<url>/2020/06/21/markdown-%E5%9F%BA%E6%9C%AC%E8%AF%AD%E6%B3%95/</url>
<content><
添加超链接:
[简书](http://jianshu.com)
[百度](http://baidu.com)
无序列表
语法:
用 - + * 任何一种都可以
- 列表内容
+ 列表内容
* 列表内容
注意:- + * 跟内容之间都要有一个空格
有序列表
语法:
数字加点
1. 列表内容
2. 列表内容
3. 列表内容
注意:序号跟内容之间要有空格
代码处理:
语法:
单行代码:代码之间分别用一个反引号包起来
`代码内容`
代码块:代码之间分别用三个反引号包起来,且两边的反引号单独占一行
(```)
代码...
代码...
代码...
(```)
</code></pre>]]></content>
</entry>
<entry>
<title>博客转移</title>
<url>/2021/11/11/%E5%8D%9A%E5%AE%A2%E8%BD%AC%E7%A7%BB/</url>
<content><![CDATA[<hr>
<a id="more"></a>
<h2 id="转移博客-传送门"><a href="#转移博客-传送门" class="headerlink" title="转移博客 传送门"></a>转移博客 传送门</h2><hr>
<p><a href="https://blog.csdn.net/weixin_43230656?spm=1000.2115.3001.5343" target="_blank" rel="noopener">csdn 传送门</a></p>
<p>因为笔记越写越多经常忘记上传 也没买个人域名 还是csdn快捷些 虽然有些小广告 无伤大雅 嘿嘿</p>
]]></content>
<tags>
<tag>转移博客</tag>
</tags>
</entry>
<entry>
<title>变量,作用域</title>
<url>/2021/09/17/%E5%8F%98%E9%87%8F%EF%BC%8C%E5%B8%B8%E9%87%8F%EF%BC%8C%E4%BD%9C%E7%94%A8%E5%9F%9F/</url>
<content><![CDATA[<hr>
<a id="more"></a>
<h2 id="变量-常量-作用域"><a href="#变量-常量-作用域" class="headerlink" title="变量 常量 作用域"></a>变量 常量 作用域</h2><hr>
<hr>
<ul>
<li>注意:<ol>
<li>每个变量都有类型,类型可以是基本类型也可以引用类型 </li>
<li>变量必须先声明后使用</li>
</ol>
</li>
</ul>
<hr>
<ul>
<li><p>变量作用域</p>
<figure class="highlight java"><table><tr><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="class"><span class="keyword">class</span> <span class="title">Variable</span></span>{</span><br><span class="line"> <span class="keyword">static</span> <span class="keyword">int</span> allClicks = <span class="number">0</span>; <span class="comment">// 类变量</span></span><br><span class="line"> String str = <span class="string">'hello'</span>; <span class="comment">// 实例变量</span></span><br><span class="line"> <span class="function"><span class="keyword">public</span> <span class="keyword">void</span> <span class="title">method</span><span class="params">()</span></span>{</span><br><span class="line"> <span class="keyword">int</span> i = o; <span class="comment">// 局部变量</span></span><br><span class="line"> }</span><br><span class="line">}</span><br></pre></td></tr></table></figure>
</li>
</ul>
<hr>
<ul>
<li><p>类变量</p>
<p>加了static </p>
<ol>
<li>在类里面,且从属于类,随着类的消失而消失</li>
</ol>
</li>
<li><p>常量 </p>
<figure class="highlight java"><table><tr><td class="code"><pre><span class="line"><span class="keyword">final</span> <span class="keyword">double</span> PI = <span class="number">3.14</span>;</span><br><span class="line"><span class="keyword">static</span> <span class="keyword">final</span> <span class="keyword">double</span> PI = <span class="number">3.14</span>;</span><br></pre></td></tr></table></figure></li>
</ul>
]]></content>
<categories>
<category>java</category>
</categories>
<tags>
<tag>变量,作用域</tag>
</tags>
</entry>
<entry>
<title>函数基础</title>
<url>/2020/07/28/%E5%87%BD%E6%95%B0%E5%9F%BA%E7%A1%80/</url>
<content><![CDATA[<hr>
<a id="more"></a>
<h3 id="函数基础回顾"><a href="#函数基础回顾" class="headerlink" title="函数基础回顾"></a>函数基础回顾</h3><hr>
<h4 id="例"><a href="#例" class="headerlink" title="例:"></a>例:</h4><ul>
<li>定义函数</li>
</ul>
<hr>
<ul>
<li>以下是 max() 函数的源代码。该函数有两个参数 num1 和 num2,会返回这两个数中较大的那个数:</li>
<li>函数定义提供了函数的实际主体 </li>
<li></li>
</ul>
<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">// 函数返回两个数中较大的那个数</span><br><span class="line"> </span><br><span class="line">int max(int num1, int num2) </span><br><span class="line">{</span><br><span class="line"> // 局部变量声明</span><br><span class="line"> int result;</span><br><span class="line"> </span><br><span class="line"> if (num1 > num2)</span><br><span class="line"> result = num1;</span><br><span class="line"> else</span><br><span class="line"> result = num2;</span><br><span class="line"> </span><br><span class="line"> return result; </span><br><span class="line">}</span><br></pre></td></tr></table></figure>
<hr>
<ul>
<li>函数声明<br>:函数声明告诉编译器函数的名称、返回类型和参数</li>
</ul>
<p><code>int max(int num1, int num2);</code></p>
<ul>
<li>在函数声明中,参数的名称并不重要,只有参数的类型是必需的,因此下面也是有效的声明: </li>
</ul>
<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">int max(int, int);</span><br></pre></td></tr></table></figure>
<ul>
<li><p>// 一个源文件中定义函数且在另一个文件中调用函数时,函数声明是必需的。在这种情况下,您应该在调用函数的文件顶部声明函数。 </p>
</li>
<li><p>调用函数<br>//一个源文件中定义函数且在另一个文件中调用函数时,函数声明是必需的。在这种情况下,您应该在调用函数的文件顶部声明函数。 </p>
</li>
</ul>
<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">#include <iostream></span><br><span class="line">using namespace std;</span><br><span class="line"> </span><br><span class="line">// 函数声明</span><br><span class="line">int max(int num1, int num2);</span><br><span class="line"> </span><br><span class="line">int main ()</span><br><span class="line">{</span><br><span class="line"> // 局部变量声明</span><br><span class="line"> int a = 100;</span><br><span class="line"> int b = 200;</span><br><span class="line"> int ret;</span><br><span class="line"> </span><br><span class="line"> // 调用函数来获取最大值</span><br><span class="line"> ret = max(a, b);</span><br><span class="line"> </span><br><span class="line"> cout << "Max value is : " << ret << endl;</span><br><span class="line"> </span><br><span class="line"> return 0;</span><br><span class="line">}</span><br><span class="line"> </span><br><span class="line">// 函数返回两个数中较大的那个数</span><br><span class="line">int max(int num1, int num2) </span><br><span class="line">{</span><br><span class="line"> // 局部变量声明</span><br><span class="line"> int result;</span><br><span class="line"> </span><br><span class="line"> if (num1 > num2)</span><br><span class="line"> result = num1;</span><br><span class="line"> else</span><br><span class="line"> result = num2;</span><br><span class="line"> </span><br><span class="line"> return result; </span><br><span class="line">}</span><br></pre></td></tr></table></figure>
<p>// 结果 </p>
<p><code>Max value is :200</code></p>
<hr>
<h3 id="Lambda-函数"><a href="#Lambda-函数" class="headerlink" title="Lambda 函数"></a>Lambda 函数</h3><hr>
<ul>
<li>定义一个可以输出字符串的lambda表达式,表达式一般都是从方括号[]开始,然后结束于花括号{},花括号里面就像定义函数那样,包含了lamdba表达式体:</li>
</ul>
<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">// 定义简单的lambda表达式</span><br><span class="line">auto basicLambda = [] { cout << "Hello, world!" << endl; };</span><br><span class="line"></span><br><span class="line">// 调用</span><br><span class="line">basicLambda();</span><br><span class="line">// 输出:Hello, world!</span><br></pre></td></tr></table></figure>
<ul>
<li>如果需要参数,那么就要像函数那样,放在圆括号里面,如果有返回值,返回类型要放在->后面,即拖尾返回类型,当然你也可以忽略返回类型,lambda会帮你自动推断出返回类型 </li>
</ul>
<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">// 指明返回类型</span><br><span class="line">auto add = [](int a, int b) -> int { return a + b; };</span><br><span class="line"></span><br><span class="line">// 自动推断返回类型</span><br><span class="line">auto multiply = [](int a, int b) { return a * b; };</span><br><span class="line">int sum = add(2, 5); // 输出:7</span><br><span class="line">int product = multiply(2, 5); // 输出:10</span><br></pre></td></tr></table></figure>
]]></content>
<categories>
<category>c++</category>
</categories>
<tags>
<tag>函数</tag>
</tags>
</entry>
<entry>
<title>抽象类</title>
<url>/2021/09/17/%E6%8A%BD%E8%B1%A1%E7%B1%BB/</url>
<content><![CDATA[<hr>
<a id="more"></a>
<h4 id="抽象类和接口"><a href="#抽象类和接口" class="headerlink" title="抽象类和接口"></a>抽象类和接口</h4><hr>
<hr>
<ul>
<li>用 abstract 修饰的类 </li>
<li>抽象类中可以没有抽象方法但是一定要声明为抽象类</li>
<li>抽象类不可以用new 关键字创建对象,它是用来被子类继承的</li>
<li>抽象方法,只有方法的声明没有方法的实现,它是用来让子类实现的</li>
<li>子类继承抽象类,那么一定要实现抽象类的方法否则该子类就要声明为抽象类</li>
</ul>
<hr>
<h5 id="接口"><a href="#接口" class="headerlink" title="接口"></a>接口</h5><ul>
<li>interface 关键字</li>
<li>继承接口用 implement</li>
<li>接口是继承类更高标准 的约束</li>
<li>接口可以多继承</li>
<li>接口不是类 不可以实例化 </li>
<li>作用:<ol>
<li>一个约束</li>
<li>可以定义一些方法让不同人去实现</li>
</ol>
</li>
</ul>
]]></content>
<categories>
<category>java</category>
</categories>
<tags>
<tag>抽象类</tag>
</tags>
</entry>
<entry>
<title>可变参数</title>
<url>/2021/09/17/%E5%8F%AF%E5%8F%98%E5%8F%82%E6%95%B0/</url>
<content><![CDATA[<hr>
<a id="more"></a>
<h1 id="可变参数"><a href="#可变参数" class="headerlink" title="可变参数"></a>可变参数</h1><hr>
<hr>
<ul>
<li><p>在方法声明中,在指定参数类型后面加一个省略号(…)</p>
</li>
<li><p>一个方法中只能指定一个可变参数,它必须是<strong>最后</strong>一个参数,任何普通参数必须在他之前声明</p>
<figure class="highlight java"><table><tr><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="class"><span class="keyword">class</span> <span class="title">Demo04</span> </span>{</span><br><span class="line"><span class="function"><span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">void</span> <span class="title">main</span><span class="params">(String[] args)</span> </span>{</span><br><span class="line"> Demo04 demo04 = <span class="keyword">new</span> Demo04();</span><br><span class="line"> demo04.printOf(<span class="number">1</span>,<span class="number">1</span>,<span class="number">2</span>,<span class="number">3</span>,<span class="number">4</span>);</span><br><span class="line"> }</span><br><span class="line"> <span class="comment">// 定义一个方法</span></span><br><span class="line"> <span class="function"><span class="keyword">public</span> <span class="keyword">void</span> <span class="title">printOf</span><span class="params">(<span class="keyword">int</span> k,<span class="keyword">int</span>... i)</span></span>{</span><br><span class="line"> <span class="keyword">for</span> (<span class="keyword">int</span> j = <span class="number">0</span>; j <<span class="number">4</span>; j++) {</span><br><span class="line"> System.out.println(i[j]);</span><br><span class="line"> }</span><br><span class="line"> System.out.println(k);</span><br><span class="line"> }</span><br><span class="line">}</span><br><span class="line"><span class="comment">// 打印出 1,2,3,4,1</span></span><br></pre></td></tr></table></figure></li>
</ul>
]]></content>
<categories>
<category>java</category>
</categories>
<tags>
<tag>可变参数</tag>
</tags>
</entry>
<entry>
<title>类型转换</title>
<url>/2021/09/17/%E7%B1%BB%E5%9E%8B%E8%BD%AC%E6%8D%A2/</url>
<content><![CDATA[<hr>
<a id="more"></a>
<h1 id="类型转换"><a href="#类型转换" class="headerlink" title="类型转换"></a>类型转换</h1><hr>
<ul>
<li>基本类型 </li>
</ul>
<p>byte short char int long float double </p>
<ul>
<li>运算中,不同类型的数据先转换为同一个类型,然后再进行运算 </li>
</ul>
<hr>
<figure class="highlight java"><table><tr><td class="code"><pre><span class="line"><span class="keyword">int</span> i = <span class="number">10</span>;</span><br><span class="line"><span class="keyword">byte</span> b = (<span class="keyword">byte</span>)i; <span class="comment">// 强制转换格式</span></span><br><span class="line">System.out.println(b);</span><br></pre></td></tr></table></figure>
<ul>
<li>注意点:<ol>
<li>不能对布尔值进行转换 </li>
<li>不能将高精度的数值转换成低精度的数值 </li>
<li>转换的时候可能存在溢出,或者精度的问题 </li>
</ol>
</li>
</ul>
<hr>
<ul>
<li><p>自动转换 </p>
<p>出现在 低转高 </p>
</li>
</ul>
<figure class="highlight java"><table><tr><td class="code"><pre><span class="line"><span class="keyword">char</span> a = <span class="string">"a"</span>;</span><br><span class="line"><span class="keyword">int</span> d = a+<span class="number">1</span>;</span><br><span class="line"><span class="comment">// -> d=98</span></span><br></pre></td></tr></table></figure>
]]></content>
<categories>
<category>java</category>
</categories>
<tags>
<tag>类型转换</tag>
</tags>
</entry>
<entry>
<title>方法的定义和调用</title>
<url>/2021/09/17/%E6%96%B9%E6%B3%95%E7%9A%84%E5%AE%9A%E4%B9%89%E5%92%8C%E8%B0%83%E7%94%A8/</url>
<content><![CDATA[<hr>
<a id="more"></a>
<h3 id="方法的定义和调用简单使用"><a href="#方法的定义和调用简单使用" class="headerlink" title="方法的定义和调用简单使用"></a>方法的定义和调用简单使用</h3><hr>
<hr>
<ul>
<li>简单的一个程序</li>
</ul>
<figure class="highlight java"><table><tr><td class="code"><pre><span class="line"><span class="comment">/**</span></span><br><span class="line"><span class="comment"> * 比大小</span></span><br><span class="line"><span class="comment"> */</span></span><br><span class="line"><span class="keyword">public</span> <span class="class"><span class="keyword">class</span> <span class="title">demo03</span> </span>{</span><br><span class="line"> <span class="function"><span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">void</span> <span class="title">main</span><span class="params">(String[] args)</span> </span>{</span><br><span class="line"></span><br><span class="line"> System.out.println(add(<span class="number">1</span>,<span class="number">2</span>));</span><br><span class="line"></span><br><span class="line"> }</span><br><span class="line"> <span class="function"><span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">int</span> <span class="title">add</span><span class="params">(<span class="keyword">int</span> a,<span class="keyword">int</span> b)</span></span>{</span><br><span class="line"> <span class="keyword">int</span> result = <span class="number">0</span>;</span><br><span class="line"> <span class="keyword">if</span>(a>b){</span><br><span class="line"> result = a;</span><br><span class="line"> }<span class="keyword">else</span> result =b;</span><br><span class="line"></span><br><span class="line"> <span class="keyword">return</span> result;</span><br><span class="line"></span><br><span class="line"> }</span><br><span class="line">}</span><br></pre></td></tr></table></figure>
<ul>
<li>其中方法加上了static则为类方法 在main方法中就可以直接调用</li>
</ul>
<hr>
<h4 id="方法的重载"><a href="#方法的重载" class="headerlink" title="方法的重载"></a>方法的重载</h4><ol>
<li>方法的名称必须相同</li>
<li>参数列表必须不同</li>
<li>方法的返回类型可以相同可以不同</li>
<li>仅仅只有返回类型不同 不可 </li>
</ol>
<p>原理:是 通过 Java 虚拟机根据 调用的方法自行对参数个数,参数类型等逐个匹配 聪儿选择对应的方法</p>
]]></content>
<categories>
<category>java</category>
</categories>
<tags>
<tag>方法的定义和调用</tag>
</tags>
</entry>
<entry>
<title>微信小程序知识点</title>
<url>/2021/07/14/%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F%E7%9F%A5%E8%AF%86/</url>
<content><![CDATA[<hr>
<a id="more"></a>
<h3 id="微信小程序先导知识点"><a href="#微信小程序先导知识点" class="headerlink" title="微信小程序先导知识点"></a>微信小程序先导知识点</h3><hr>
<ul>
<li><p>==什么叫做API==<br><a href="https://blog.csdn.net/weixin_42067279/article/details/87987028" target="_blank" rel="noopener">link</a></p>
</li>
<li><p>app.js、app.json、app.wxss </p>
</li>
</ul>
<p>关键的三个文件:.js后缀的是脚本文件,.json后缀的文件是配置文件,.wxss后缀的是样式表文件。微信小程序会读取这些文件,并生成小程序实例 </p>
<p>==详解== </p>
<ol>
<li>app.js是小程序的脚本代码。我们可以在这个文件中监听并处理小程序的生命周期函数、声明全局变量。调用框架提供的丰富的API,如本例的同步存储及同步读取本地数据。</li>
<li>app.json 是对整个小程序的全局配置。我们可以在这个文件中配置小程序是由哪些页面组成,配置小程序的窗口背景色,配置导航条样式,配置默认标题。注意该文件不可添加任何注释。</li>
<li>app.wxss 是整个小程序的公共样式表。我们可以在页面组件的 class 属性上直接使用 app.wxss 中声明的样式规则。 </li>
</ol>
<hr>
<p>==注意== </p>
<ul>
<li>在实例程序的代码中还有2个文件夹,一个是pages,一个是utils,其中utils是放通用工具类方法的一个文件夹,pages是存放所有页面的文件夹。</li>
</ul>
<hr>
<ul>
<li><p>每一个小程序页面是由同路径下同名的四个不同后缀文件的组成,如:==index.js、index.wxml、index.wxss、index.json==。.js后缀的文件是脚本文件,.json后缀的文件是配置文件,.wxss后缀的是样式表文件,.wxml后缀的文件是页面结构文件。 </p>
</li>
<li><p>index.wxml 是页面的结构文件:本例中使用了<view/>、<image/>、<text/>来搭建页面结构,绑定数据和交互处理函数。</p>
<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line"><!--index.wxml--></span><br><span class="line"><view class="container"></span><br><span class="line"> <view bindtap="bindViewTap" class="userinfo"></span><br><span class="line"> <image class="userinfo-avatar" src="{{userInfo.avatarUrl}}" background-size="cover"></image></span><br><span class="line"> <text class="userinfo-nickname">{{userInfo.nickName}}</text></span><br><span class="line"> </view></span><br><span class="line"> <view class="usermotto"></span><br><span class="line"> <text class="user-motto">{{motto}}</text></span><br><span class="line"> </view></span><br><span class="line"></view></span><br></pre></td></tr></table></figure></li>
<li><p>index.js 是页面的脚本文件,在这个文件中我们可以监听并处理页面的生命周期函数、获取小程序实例,声明并处理数据,响应页面交互事件等。 </p>
</li>
</ul>
<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">//index.js</span><br><span class="line">//获取应用实例</span><br><span class="line">var app = getApp()</span><br><span class="line">Page({</span><br><span class="line"> data: {</span><br><span class="line"> motto: 'Hello World',</span><br><span class="line"> userInfo: {}</span><br><span class="line"> },</span><br><span class="line"> //事件处理函数</span><br><span class="line"> bindViewTap: function() {</span><br><span class="line"> wx.navigateTo({</span><br><span class="line"> url: '../logs/logs'</span><br><span class="line"> }) },</span><br><span class="line"> onLoad: function () {</span><br><span class="line"> console.log('onLoad')</span><br><span class="line"> var that = this</span><br><span class="line"> //调用应用实例的方法获取全局数据</span><br><span class="line"> app.getUserInfo(function(userInfo){</span><br><span class="line"> //更新数据</span><br><span class="line"> that.setData({</span><br><span class="line"> userInfo:userInfo</span><br><span class="line"> })</span><br><span class="line"> })</span><br><span class="line"> }</span><br><span class="line">})</span><br></pre></td></tr></table></figure>
<ul>
<li>index.wxss 是页面的样式表: </li>
<li>页面的样式表是非必要的。当有页面样式表时,页面的样式表中的样式规则会层叠覆盖 app.wxss 中的样式规则。如果不指定页面的样式表,也可以在页面的结构文件中直接使用 app.wxss 中指定的样式规则。</li>
</ul>
<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">/**index.wxss**/</span><br><span class="line">.userinfo {</span><br><span class="line"> display: flex;</span><br><span class="line"> flex-direction: column;</span><br><span class="line"> align-items: center;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line">.userinfo-avatar {</span><br><span class="line"> width: 128rpx;</span><br><span class="line"> height: 128rpx;</span><br><span class="line"> margin: 20rpx;</span><br><span class="line"> border-radius: 50%;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line">.userinfo-nickname {</span><br><span class="line"> color: #aaa;</span><br><span class="line">}</span><br><span class="line"></span><br><span class="line">.usermotto {</span><br><span class="line"> margin-top: 200px;</span><br><span class="line">}</span><br></pre></td></tr></table></figure>
<ul>
<li>index.json 是页面的配置文件:</li>
<li>页面的配置文件是非必要的。当有页面的配置文件时,配置项在该页面会覆盖 app.json 的 window 中相同的配置项。如果没有指定的页面配置文件,则在该页面直接使用 app.json 中的默认配置。</li>
<li>logs 的页面结<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line"><!--logs.wxml--></span><br><span class="line"><view class="container log-list"></span><br><span class="line"> <block wx:for-items="{{logs}}" wx:for-item="log"></span><br><span class="line"> <text class="log-item">{{index + 1}}. {{log}}</text></span><br><span class="line"> </block></span><br><span class="line"></view></span><br></pre></td></tr></table></figure></li>
<li>==logs 页面使用 <block/> 控制标签来组织代码,在 <block/> 上使用 wx:for-items 绑定 logs 数据,并将 logs 数据循环展开节点== </li>
</ul>
<figure class="highlight plain"><table><tr><td class="code"><pre><span class="line">//logs.js</span><br><span class="line">var util = require('../../utils/util.js')</span><br><span class="line">Page({</span><br><span class="line"> data: {</span><br><span class="line"> logs: []</span><br><span class="line"> },</span><br><span class="line"> onLoad: function () {</span><br><span class="line"> this.setData({</span><br><span class="line"> logs: (wx.getStorageSync('logs') || []).map(function (log) {</span><br><span class="line"> return util.formatTime(new Date(log))</span><br><span class="line"> })</span><br><span class="line"> })</span><br><span class="line"> }</span><br><span class="line">})</span><br></pre></td></tr></table></figure>]]></content>
<categories>
<category>微信小程序</category>
</categories>
<tags>
<tag>微信小程序</tag>
</tags>
</entry>
<entry>
<title>自增自减符号</title>
<url>/2021/09/17/%E8%87%AA%E5%A2%9E%E8%87%AA%E5%87%8F%E7%AC%A6%E5%8F%B7/</url>
<content><![CDATA[<hr>
<a id="more"></a>
<h4 id="自增自减符号、Math类、位运算符"><a href="#自增自减符号、Math类、位运算符" class="headerlink" title="自增自减符号、Math类、位运算符"></a>自增自减符号、Math类、位运算符</h4><hr>
<ul>
<li><p>简单理解</p>
</li>
<li><p>一个例子</p>
</li>
</ul>
<figure class="highlight java"><table><tr><td class="code"><pre><span class="line"><span class="keyword">public</span> <span class="class"><span class="keyword">class</span> <span class="title">demo01</span> </span>{</span><br><span class="line"> <span class="function"><span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">void</span> <span class="title">main</span><span class="params">(String[] args)</span> </span>{</span><br><span class="line"> <span class="keyword">int</span> a = <span class="number">2</span>;</span><br><span class="line"> <span class="keyword">int</span> b = a++;</span><br><span class="line"><span class="comment">// 这里隐藏了一个 a = a+1;</span></span><br><span class="line"> System.out.println(a);</span><br><span class="line"> System.out.println(b);</span><br><span class="line"> <span class="keyword">int</span> c = ++a;</span><br><span class="line"> System.out.println(c);</span><br><span class="line"><span class="comment">/*</span></span><br><span class="line"><span class="comment"> * 3</span></span><br><span class="line"><span class="comment"> * 2</span></span><br><span class="line"><span class="comment"> * 4</span></span><br><span class="line"><span class="comment"> */</span></span><br><span class="line"> }</span><br><span class="line">}</span><br></pre></td></tr></table></figure>
<hr>
<ul>
<li>幂运算 使用工具类运算</li>
<li>Math类</li>
</ul>
<figure class="highlight java"><table><tr><td class="code"><pre><span class="line"><span class="comment">// 2的三次方</span></span><br><span class="line"><span class="keyword">double</span> a = Math.pow(<span class="number">3</span>,<span class="number">2</span>);</span><br><span class="line"><span class="comment">// -> 8</span></span><br></pre></td></tr></table></figure>
<hr>
<ul>
<li><p>位运算</p>
<p>A = 0011 1100</p>
<p>B = 0000 1101</p>
<p>A^B = 0011 0001 // 异或 相同取0 相异取1</p>
<p>~B = 1111 0010 // 取反 </p>
</li>
</ul>
<hr>
<ul>
<li><p><< >></p>
<ol>
<li><p><< 左移 相当于 *2 >> 右移 相当于 /2</p>
<p><img src="https://cdn.jsdelivr.net/gh/codebear2/pictureRepository/images/202109071418619.bmp" alt=""></p>
</li>
</ol>
</li>
</ul>
]]></content>
<categories>
<category>java</category>
</categories>
<tags>
<tag>自增自减符号</tag>
</tags>
</entry>
<entry>
<title>面向对象三大特性</title>
<url>/2021/09/17/%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E4%B8%89%E5%A4%A7%E7%89%B9%E6%80%A7/</url>
<content><![CDATA[<hr>
<p>layout: w<br>title: 面向对象三大特性<br>date: 2021-09-17 14:57:04<br>tags: 面向对象<br>categories: java</p>
<hr>
<hr>
<a id="more"></a>
<h3 id="面向对象-封装"><a href="#面向对象-封装" class="headerlink" title="面向对象-封装"></a>面向对象-封装</h3><hr>
<ul>
<li><p>高内聚低耦合</p>
<p>高内聚就是类的内部数据操作细节自己来完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用</p>
</li>
<li><p>封装(隐藏的数据)</p>
<p>应禁止直接访问一个对象中的数据的实际表示,而通过操作接口来访问,称之为信息隐蔽</p>
</li>
<li><p>封装大多数是对于 数据来说,对于方法较少使用</p>
</li>
</ul>
<hr>
<hr>
<ul>
<li>对于私有属性 我们需要提供可以访问这个属性的方法</li>
<li><strong>get/set</strong></li>
<li>通过get方法去获取这个属性 通set方法去给属性赋值</li>
</ul>
<p><img src="https://cdn.jsdelivr.net/gh/codebear2/pictureRepository/images/202109071416738.bmp" alt=""></p>
<hr>
<ul>
<li>总结 ——封装好处<ol>
<li>提高程序的安全性</li>
<li>隐藏代码的实现细节</li>
<li>统一接口</li>
<li>系统可维护性增加了</li>
</ol>
</li>
</ul>
<hr>
<h4 id="面向对象—继承"><a href="#面向对象—继承" class="headerlink" title="面向对象—继承"></a>面向对象—继承</h4><hr>
<ul>
<li>Java中继承只有单继承,没有多继承</li>
<li><strong>extends</strong></li>
<li>子类继承父类<ol>
<li>子类拥有父类的全部的方法(public)</li>
<li>私有(private)不可继承</li>
</ol>
</li>
<li>Ctrl + h Idel 弹出 继承树</li>
</ul>
<hr>
<h3 id="super-和-this"><a href="#super-和-this" class="headerlink" title="super 和 this"></a>super 和 this</h3><hr>
<ul>
<li><p>super的注意点:</p>
<ol>
<li>是调用父类的构造方法,必须在构造方法的第一个</li>
<li>super 必须只能出现在子类的方法和构造函数中</li>
<li>super和this不能同时调用构造方法 </li>
</ol>
</li>
<li><p>Vs this:</p>
<ol>
<li><p>代表的对象不同:</p>
<pre><code>this 本身调用者这个对象
super :代表父类对象的应用</code></pre></li>
<li><p>前提:</p>
<pre><code>this: 没有继承也可以使用
super:代表父类对象的应用</code></pre></li>
</ol>
</li>
</ul>
<hr>
<hr>
<h4 id="多态"><a href="#多态" class="headerlink" title="多态"></a>多态</h4><hr>
<ul>
<li><strong>重写</strong><ol>
<li>需要有继承关系,子类重写父类的方法</li>
<li>方法名必须相同</li>
<li>参数列表必须相同</li>
<li>修饰符:范围可以扩大: public > protected >default > private</li>
<li>抛出的异常 范围 可以被缩小 但不能扩大 </li>
<li>重写 :子类的方法和父类必要一致 方法体不同 </li>
</ol>
</li>
<li>为什么需要重写<ol>
<li>父类的功能,子类不一定需要,或者不一定满足</li>
</ol>
</li>
<li>对于static 方法在继承中的使用 与 (非静态)方法的区别</li>
<li>还涉及到 <strong>父类引用指向子类</strong></li>
<li>父类引用指向子类 详解:<a href="https://blog.csdn.net/qq_41160264/article/details/81037752" target="_blank" rel="noopener">博客文章</a></li>
</ul>
<p><img src="https://cdn.jsdelivr.net/gh/codebear2/pictureRepository/images/202109071417925.bmp" alt="capture_20210828214352478"></p>
<p><img src="https://cdn.jsdelivr.net/gh/codebear2/pictureRepository/images/202109071417528.bmp" alt=""></p>
<hr>
<h4 id="多态详解"><a href="#多态详解" class="headerlink" title="多态详解"></a>多态详解</h4><ul>
<li><p>同一个方法可以根据发送对象的的不同而采用多种不同的行为方式</p>
</li>
<li><p>多态存在的条件</p>
<ol>
<li>有继承关系</li>
<li>子类重写父类方法</li>
<li>父类引用指向子类对象</li>
</ol>
</li>
<li><p>注意: 多态是方法的多态,属性没有多态性</p>
</li>
<li><p>不可</p>
<ol>
<li>static方法 属于类 它不属于实例</li>
<li>final 常量</li>
<li>private 方法</li>
</ol>
</li>
</ul>
<hr>
<h4 id="instanceof-和类型转换"><a href="#instanceof-和类型转换" class="headerlink" title="instanceof 和类型转换"></a>instanceof 和类型转换</h4><ul>
<li><p>instanceof (类型转换)引用类型 判断一个对象是什么类型</p>
</li>
<li><pre><code class="java"><span class="comment">// object person student</span>
<span class="comment">// object person teacher</span>
Object object = <span class="keyword">new</span> Student();
System.out.println(object <span class="keyword">instanceof</span> Student );
<span class="comment">// ture </span>
<span class="comment">// 主要是观看 instanceof 左右两边是否 有继承关系 </span>
<!--<span class="number">0</span>--></code></pre>
</li>
<li><p>需要转换条件:</p>
<ul>
<li>父类引用指向子类的对象</li>
</ul>
</li>
</ul>
]]></content>
</entry>
<entry>
<title>数组</title>
<url>/2021/09/17/%E9%80%92%E5%BD%92/</url>
<content><![CDATA[<hr>
<a id="more"></a>
<h2 id="数组"><a href="#数组" class="headerlink" title="数组"></a>数组</h2><hr>
<hr>
<ul>
<li><p>声明 </p>
<figure class="highlight java"><table><tr><td class="code"><pre><span class="line"><span class="keyword">int</span>[] nums;<span class="comment">// 声明一个数组</span></span><br><span class="line">nums = <span class="keyword">new</span> <span class="keyword">int</span>[<span class="number">10</span>];<span class="comment">// 创建一个数组</span></span><br><span class="line">nums[<span class="number">0</span>] = <span class="number">1</span>;</span><br><span class="line">nums[<span class="number">1</span>] = <span class="number">2</span>;<span class="comment">// 给数组中的元素赋值</span></span><br></pre></td></tr></table></figure>
</li>
<li><p>简化统一 :静态初始化</p>
<figure class="highlight java"><table><tr><td class="code"><pre><span class="line"><span class="keyword">int</span>[] nums ={<span class="number">1</span>,<span class="number">2</span>,<span class="number">3</span>,<span class="number">4</span>,<span class="number">5</span>};</span><br><span class="line"> <span class="keyword">for</span> (<span class="keyword">int</span> i = <span class="number">0</span>; i <nums.length; i++)</span><br><span class="line"> { </span><br><span class="line"> System.out.println(nums[i]);</span><br><span class="line"> }</span><br></pre></td></tr></table></figure>
</li>
<li><p>直接将声明和初始化放在一块:动态初始化</p>
<figure class="highlight java"><table><tr><td class="code"><pre><span class="line"><span class="keyword">int</span>[] nums = <span class="keyword">new</span> <span class="keyword">int</span>[<span class="number">10</span>];</span><br><span class="line">nums[<span class="number">0</span>] = <span class="number">1</span>;</span><br><span class="line">nums[<span class="number">1</span>] = <span class="number">2</span>;</span><br></pre></td></tr></table></figure>
</li>
</ul>
<hr>
<p>小结①:</p>
<ol>
<li>数组也是对象,数组元素相当于成员的成员变量</li>
<li>数组的长度是一定的</li>
</ol>
<hr>
<h3 id="多维数组"><a href="#多维数组" class="headerlink" title="多维数组"></a>多维数组</h3><ul>
<li>多维数组可看作为是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组</li>
</ul>
<hr>
<p><img src="https://cdn.jsdelivr.net/gh/codebear2/pictureRepository/images/202109071418750.bmp" alt=""></p>
<hr>
<figure class="highlight java"><table><tr><td class="code"><pre><span class="line"><span class="keyword">int</span>[][] array ={{<span class="number">1</span>,<span class="number">2</span>},{<span class="number">2</span>,<span class="number">3</span>},{<span class="number">3</span>,<span class="number">4</span>},{<span class="number">4</span>,<span class="number">5</span>}};</span><br><span class="line"></span><br><span class="line"><span class="keyword">for</span> (<span class="keyword">int</span> i=<span class="number">0</span>;i<array.length;i++){</span><br><span class="line"> <span class="keyword">for</span>(<span class="keyword">int</span> j=<span class="number">0</span>;j<array[i].length;j++){</span><br><span class="line"> System.out.println(array[i][j]);</span><br><span class="line"> }</span><br><span class="line">}</span><br></pre></td></tr></table></figure>
<hr>
<h2 id="Arrays"><a href="#Arrays" class="headerlink" title="Arrays"></a>Arrays</h2><ul>
<li><p>工具类 </p>
</li>
<li><p>列举几个常用的方法</p>
</li>
</ul>
<figure class="highlight java"><table><tr><td class="code"><pre><span class="line"><span class="keyword">int</span>[] nums ={<span class="number">1</span>,<span class="number">2</span>,<span class="number">3</span>,<span class="number">5</span>,<span class="number">4</span>};</span><br><span class="line">System.out.print(Ayyays.toString(nums));<span class="comment">//d</span></span><br><span class="line"><span class="comment">// [1,2,3,5,4]</span></span><br><span class="line">Ayyays.sort(nums); <span class="comment">// 升序排序</span></span><br><span class="line">System.out.print(Ayyays.toString(nums));</span><br><span class="line"><span class="comment">// [1,2,3,4,5]</span></span><br></pre></td></tr></table></figure>
]]></content>
<categories>
<category>java</category>
</categories>
<tags>
<tag>数组</tag>
</tags>
</entry>
</search>