黑马程序员技术交流社区
标题:
反转数组
[打印本页]
作者:
毕静存
时间:
2015-10-30 13:33
标题:
反转数组
class Demo_FanZhuan {
public static void main(String[] args) {
int [] arr = {1,2,3,4,5,6,7};
fanZhuan(arr);
System.out.print("[");
print(arr);
}
/*public static void fanZhuan(int [] arr){
for(int i = 0; i<arr.length/2; i++){
temp=arr[i];
arr[i]=arr[arr.length-1-i];
arr[arr.length-1-i]=temp;
}
}*/
public static void fanZhuan(int [] arr){
for(int i = 0, j = arr.length-1; i<=j; i++,j--){
//for(int i=0,j=arr.length-1;i<=j;i++,j--) {
int temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
public static void print(int[] arr){
for (int i =0;i<arr.length ;i++ ) {
if (i==arr.length-1) {
System.out.print(arr[i]+"]");
return;
}
System.out.print(arr[i]+" ,");
}
}
}
作者:
黑夜中那颗星
时间:
2015-10-30 15:49
本帖最后由 黑夜中那颗星 于 2015-10-30 15:51 编辑
int[] arr = {1,2,3,4,5,8,9,22};
int min = 0,max = arr.length-1;
while(min<max){
int temp = arr[max];
arr[max] = arr[min];
arr[min] = temp;
min++;
max--;
}
搞定
作者:
莫盛强
时间:
2015-10-30 18:36
int[] arr = {1,2,3,4,5,8,9,22};
String s = "";
for(int i=0;i<arr.length;i++){
s = " "+ arr[i] + s;
}
System.out.println(s);
作者:
young_ants
时间:
2015-10-30 19:33
class Test2 {
public static void main(String[] args) {
//数组的反转的第二种方式
int[] arr = {1,2,3,4,5,6,7};
reverseArray(arr);
}
/*
数组的反转的第二种方式
1,返回值类型,无返回值 void
2,参数类型int[] arr
*/
public static void reverseArray(int[] arr) {
if (arr != null) {
print(arr);
reverse(arr);
print(arr);
}else {
print(arr);
}
}
public static void reverse(int[] arr) {
//定义数组起始指针和尾指针,以便完成数组元素交换
for (int startIndex = 0,endIndex = arr.length-1;startIndex <= endIndex ;startIndex ++, endIndex --) {
//数组元素交换
int temp = arr[startIndex];
arr[startIndex] = arr[endIndex];
arr[endIndex] = temp;
}
}
public static void print(int[] arr) {
if (arr == null) { //如果是空数组,则直接打印输出空,避免空指针异常
System.out.println("null");
return;
}
if (arr.length == 0) { //如果数组长度为0 ,直接打印[]
System.out.println("[]");
return;
}
//数组的打印输出格式
System.out.print("[");
for (int i = 0; i <= arr.length-1; i++) {
if (i == arr.length-1) {
System.out.print(arr[i] + "]");
}else {
System.out.print(arr[i] + ", ");
}
}
System.out.println();
}
}
复制代码
作者:
洛克先生EN
时间:
2015-10-30 22:45
嗯嗯,,你反向遍历集合试试
作者:
刘辰阳
时间:
2015-11-19 21:23
路过!!!!!!!!!!!!
作者:
zqiang
时间:
2015-11-19 21:27
倒着遍历倒着打印就好了
作者:
dushine2000
时间:
2015-11-19 21:33
建议添加注释
作者:
你是对的
时间:
2015-11-19 21:40
啊 又是这种帖子
作者:
小笨笨天
时间:
2015-11-19 22:03
洛克先生EN 发表于 2015-10-30 22:45
嗯嗯,,你反向遍历集合试试
直接转换为数组 在反向遍历
作者:
songjianzaina
时间:
2015-11-19 22:18
过来围观一下~
作者:
邸永明
时间:
2015-11-19 22:40
可以加点注释,让人更容易懂一些,只是一些代码的话不太好看懂
作者:
Java小妖
时间:
2015-11-19 22:53
建议养成加注释的习惯
作者:
oup
时间:
2015-11-19 23:15
写的很不错
作者:
Rocky_zhang
时间:
2015-11-20 22:03
还以为是不会写的帖子,既然都写出来了,我就拜读一下
作者:
sufutian
时间:
2015-11-20 22:50
写这个干哈说一下呀
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2