黑马程序员技术交流社区
标题:
【厦门校区】运用泛型,实现不同类型的数组元素反转
[打印本页]
作者:
吴洪标
时间:
2018-11-30 13:18
标题:
【厦门校区】运用泛型,实现不同类型的数组元素反转
本帖最后由 吴洪标 于 2018-11-30 13:29 编辑
/*
将一个数组的元素前后反转
运用了泛型,定义了打印数组元素的方法,以及反转数组元素的方法
*/
public class
ArrayReverse {
public static void
main(String[] args) {
Integer[] intArray = {
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
};
Double[] doubleArray = {
1.0
,
2.0
,
3.0
,
4.0
};
String[] stringArray = {
"
人
"
,
"
上
"
,
"
楼
"
,
"
中
"
,
"
阁
"
};
arrayReverse
(intArray);
arrayReverse
(doubleArray);
arrayReverse
(stringArray);
}
//
定义打印数组元素的方法
public static
<
T
>
void
arrayPrint(
T
[] inputArray) {
//
泛型
<T>,
接受不同类型的数组作为参数,根据传递给泛型方法的参数类型,编译器适当地处理每一个方法调用。
for
(
T
element : inputArray) {
//for
循环变量数组的每一个元素
System.
out
.printf(
"%s"
, element);
}
System.
out
.println();
}
//
定义反转数组元素的方法
public static
<
T
>
void
arrayReverse(
T
[] inputArray) {
arrayPrint
(inputArray);
//
这里
for
循环只遍历到数组的一半,通过
array.length-i-1
来定位对称位置的数组元素
for
(
int
i =
0
; i < (inputArray.
length
/
2
); i++) {
T
temp;
temp = inputArray
;
inputArray
= inputArray[inputArray.
length
- i -
1
];
inputArray[inputArray.
length
- i -
1
] = temp;
}
arrayPrint
(inputArray); //调用数组打印方法
System.
out
.println();
}
}
ArrayReverse.png
(2.85 KB, 下载次数: 21)
下载附件
2018-11-30 13:17 上传
程序运行结果
作者:
一个人一座城0.0
时间:
2018-11-30 13:58
到此一游。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2