Skip to content

Commit c8c8a7c

Browse files
committed
Java第五天
1 parent 803bfcb commit c8c8a7c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+941
-0
lines changed

day05/Java基础知识测试.doc

50.5 KB
Binary file not shown.
658 Bytes
Binary file not shown.
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
/*
2+
方法重载:
3+
在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可。
4+
和返回值类型无关。
5+
*/
6+
class MethodDemo {
7+
public static void main(String[] args) {
8+
//需求:请写一个功能,实现两个数据的求和
9+
System.out.println(sum(10,20));
10+
11+
//需求:请写一个功能,实现三个数据的求和
12+
//System.out.println(sum2(10,20,30));
13+
System.out.println(sum(10,20,30));
14+
15+
System.out.println(sum(1.5,2.5));
16+
}
17+
18+
public static int sum(int a,int b) {
19+
return a + b;
20+
}
21+
22+
/*
23+
public static int sum2(int a,int b,int c) {
24+
return a + b + c;
25+
26+
//方法的嵌套调用
27+
//return sum(sum(a,b),c);
28+
}
29+
*/
30+
31+
//由于方法名要表达的其实是该方法的作用
32+
//所以,sum2这个名字不好,还是要用sum 比较好
33+
public static int sum(int a,int b,int c) {
34+
return a + b + c;
35+
}
36+
37+
public static double sum(double a,double b) {
38+
return a + b;
39+
}
40+
}
599 Bytes
Binary file not shown.
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
/*
2+
比较两个数据是否相等。参数类型分别为两个byte类型,两个short类型,
3+
两个int类型,两个long类型,并在main方法中进行测试
4+
*/
5+
class MethodTest {
6+
public static void main(String[] args) {
7+
//测试
8+
byte a = 10;
9+
byte b = 10;
10+
System.out.println(compare(a,b));
11+
12+
System.out.println(compare(10,10));
13+
}
14+
15+
//byte
16+
/*
17+
public static boolean compare(byte a,byte b) {
18+
System.out.println("byte");
19+
return a == b;
20+
}
21+
22+
//short
23+
public static boolean compare(short a,short b) {
24+
System.out.println("short");
25+
return a == b;
26+
}
27+
28+
//int
29+
public static boolean compare(int a,int b) {
30+
System.out.println("int");
31+
return a == b;
32+
}
33+
*/
34+
35+
//long
36+
public static boolean compare(long a,long b) {
37+
System.out.println("long");
38+
return a == b;
39+
}
40+
}
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
/*
2+
数组:存储同一种数据类型的多个元素的集合。(也可以称为容器)
3+
4+
数组的定义格式:
5+
格式1:数据类型[] 数组名;
6+
int[] arr;
7+
格式2:数据类型 数组名[];
8+
int arr[];
9+
10+
推荐方式1。
11+
12+
现在的数组没有元素,使用是没有意义的。
13+
接下来,我们要对数组进行初始化。
14+
那么,我们如何对数组进行初始化呢?
15+
动态初始化:初始化时只指定数组长度,由系统为数组分配初始值。
16+
静态初始化:初始化时指定每个数组元素的初始值,由系统决定数组长度。
17+
18+
动态初始化:
19+
数据类型[] 数组名 = new 数据类型[数组长度];
20+
21+
*/
22+
class ArrayDemo {
23+
public static void main(String[] args) {
24+
//按照动态初始化数组的格式,我们来定义一个存储3个int类型元素的数组
25+
int[] arr = new int[3];
26+
27+
/*
28+
左边:
29+
int:说明数组中的元素的数据类型。
30+
[]:说明这是一个数组
31+
arr:数组的名称
32+
右边:
33+
new:为实体(对象)开辟内存空间
34+
Scanner sc = new Scanner(System.in);
35+
int:说明数组中的元素的数据类型。
36+
[]:说明这是一个数组
37+
3:说明的是数组中的元素个数
38+
*/
39+
40+
//我们如何获取里面的值呢?
41+
//数组名称
42+
System.out.println(arr); //[I@778b3fee 地址值
43+
//如何获取元素值呢?
44+
//数组为每个元素分配了一个编号,这个编号的专业叫法:索引。
45+
//而且是从0开始编号的。也就是说数组的最大编号是长度-1。
46+
//有了编号以后,我们就可以通过数组名和编号的配合取得数组元素
47+
//格式:数组名[编号];
48+
System.out.println(arr[0]); //0
49+
System.out.println(arr[1]); //0
50+
System.out.println(arr[2]); //0
51+
}
52+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
/*
2+
定义一个数组,输出数组名及元素。然后给数组中的元素赋值,再次输出数组名及元素。
3+
*/
4+
class ArrayDemo2 {
5+
public static void main(String[] args) {
6+
//定义数组
7+
int[] arr = new int[3];
8+
9+
//输出数组名称及元素
10+
System.out.println(arr);
11+
System.out.println(arr[0]);
12+
System.out.println(arr[1]);
13+
System.out.println(arr[2]);
14+
15+
//给数组中的元素赋值
16+
arr[0] = 10;
17+
arr[1] = 20;
18+
arr[2] = 30;
19+
20+
//再次输出数组名称及元素
21+
System.out.println(arr);
22+
System.out.println(arr[0]);
23+
System.out.println(arr[1]);
24+
System.out.println(arr[2]);
25+
}
26+
}
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
/*
2+
定义两个数组,分别输出数组名及元素。然后分别给数组中的元素赋值,分别再次输出数组名及元素。
3+
*/
4+
class ArrayDemo3 {
5+
public static void main(String[] args) {
6+
//定义一个数组
7+
int[] arr = new int[3];
8+
9+
//输出数组名称及元素
10+
System.out.println(arr);
11+
System.out.println(arr[0]);
12+
System.out.println(arr[1]);
13+
System.out.println(arr[2]);
14+
15+
//赋值并输出
16+
arr[0] = 10;
17+
arr[1] = 20;
18+
arr[2] = 30;
19+
System.out.println(arr);
20+
System.out.println(arr[0]);
21+
System.out.println(arr[1]);
22+
System.out.println(arr[2]);
23+
24+
//再定义一个新的数组
25+
int[] arr2 = new int[2];
26+
System.out.println(arr2);
27+
System.out.println(arr2[0]);
28+
System.out.println(arr2[1]);
29+
30+
//赋值并输出
31+
arr2[0] = 100;
32+
arr2[1] = 200;
33+
System.out.println(arr2);
34+
System.out.println(arr2[0]);
35+
System.out.println(arr2[1]);
36+
}
37+
}
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
/*
2+
定义两个数组,先定义一个数组,赋值,输出。
3+
然后定义第二个数组的时候把第一个数组的地址赋值给第二个数组。
4+
然后给第二个数组赋值,再次输出两个数组的名及元素。
5+
*/
6+
class ArrayDemo4 {
7+
public static void main(String[] args) {
8+
//定义一个数组
9+
int[] arr = new int[3];
10+
11+
//赋值,输出。
12+
arr[0] = 11;
13+
arr[1] = 22;
14+
arr[2] = 33;
15+
System.out.println(arr);
16+
System.out.println(arr[0]);
17+
System.out.println(arr[1]);
18+
System.out.println(arr[2]);
19+
20+
//定义第二个数组
21+
int[] arr2 = arr;
22+
23+
arr2[1] = 100;
24+
25+
System.out.println(arr);
26+
System.out.println(arr[0]);
27+
System.out.println(arr[1]); //???
28+
System.out.println(arr[2]);
29+
30+
System.out.println(arr2);
31+
System.out.println(arr2[0]);
32+
System.out.println(arr2[1]);
33+
System.out.println(arr2[2]);
34+
}
35+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
/*
2+
静态初始化格式:
3+
数据类型[] 数组名 = new 数据类型[]{元素1,元素2,…};
4+
5+
简化版:
6+
数据类型[] 数组名 = {元素1,元素2,…};
7+
*/
8+
class ArrayDemo5 {
9+
public static void main(String[] args) {
10+
//定义一个数组
11+
//int[] arr = new int[]{1,2,3};
12+
13+
//简化后
14+
int[] arr = {1,2,3};
15+
16+
System.out.println(arr);
17+
System.out.println(arr[0]);
18+
System.out.println(arr[1]);
19+
System.out.println(arr[2]);
20+
}
21+
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
/*
2+
数组操作常见的两个小问题:
3+
A:数组索引越界
4+
ArrayIndexOutOfBoundsException
5+
因为我们访问了不存在的索引。
6+
B:空指针异常
7+
NullPointerException
8+
因为数组已经不再指向堆内存,所以就不能再去访问堆内存的元素了。
9+
*/
10+
class ArrayDemo6 {
11+
public static void main(String[] args) {
12+
//定义数组
13+
int[] arr = {1,2,3};
14+
15+
//System.out.println(arr[3]);
16+
17+
arr = null; //把arr指向堆内存给去掉了,arr没有指向了。
18+
System.out.println(arr[0]);
19+
}
20+
}
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
/*
2+
数组遍历:
3+
依次输出数组中的每一个元素
4+
5+
分析:
6+
A:定义一个数组,并赋值。
7+
B:输出数组中的元素
8+
*/
9+
class ArrayTest {
10+
public static void main(String[] args) {
11+
//定义一个数组,并赋值
12+
int[] arr = {11,22,33,44,55};
13+
14+
//方式1
15+
System.out.println(arr[0]);
16+
System.out.println(arr[1]);
17+
System.out.println(arr[2]);
18+
System.out.println(arr[3]);
19+
System.out.println(arr[4]);
20+
System.out.println("---------------");
21+
22+
//方式2
23+
//通过观察,我们可以通过for循环实现取出0~4就OK了
24+
for(int x=0; x<5; x++) {
25+
System.out.println(arr[x]);
26+
}
27+
System.out.println("---------------");
28+
29+
//方式3
30+
//如果元素多,数起来太麻烦了。
31+
//所以呢,数组为了方便我们的操作,就自己提供了一个属性:长度属性 length
32+
//用来获取数组的长度。
33+
//格式是:数组名.length;
34+
//System.out.println(arr.length);
35+
36+
for(int x=0; x<arr.length; x++) {
37+
System.out.println(arr[x]);
38+
}
39+
}
40+
}
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
/*
2+
数组获取最值(获取数组中的最大值最小值)
3+
4+
自学:最小值。
5+
*/
6+
class ArrayTest2 {
7+
public static void main(String[] args) {
8+
//定义数组
9+
int[] arr = {12,86,79,43,50};
10+
11+
//如何找呢?
12+
/*
13+
int max = arr[0];
14+
15+
for(int x=1; x<arr.length; x++) {
16+
if(arr[x] > max) {
17+
max = arr[x];
18+
}
19+
}
20+
21+
System.out.println(max);
22+
*/
23+
24+
//为了将来调用方便,我们写一个功能实现获取最值
25+
int max = getMax(arr);
26+
System.out.println("最大值是:"+max);
27+
}
28+
29+
/*
30+
返回值类型:int
31+
参数列表:int[] arr
32+
*/
33+
public static int getMax(int[] arr) {
34+
//定义参照物
35+
int max = arr[0];
36+
37+
//循环遍历从1开始元素
38+
for(int x=1; x<arr.length; x++) {
39+
//比较,把大的留下来
40+
if(arr[x] > max) {
41+
max = arr[x];
42+
}
43+
}
44+
45+
//返回最大值
46+
return max;
47+
}
48+
}

0 commit comments

Comments
 (0)