黑马程序员技术交流社区
标题:
哪里出错了
[打印本页]
作者:
木华
时间:
2014-6-23 21:26
标题:
哪里出错了
class ArrayDemo3
{
public static void main(String[] args)
{
int[]arr = new int[3];
int[]arr1=new int[]{1,3,5,7};
int []arr2={5,7,9};
for(int x=0; x<arr.length() ; x++)
{
System.out.println("arr["+x+"] = "+arr[x]+";");
}
for(int x=0; x<arr1.length() ; x++)
{
System.out.println("arr1["+x+"] = "+arr1[x]+";");
}
for(int x=0; x<arr2.length() ; x++)
{
System.out.println("arr2["+x+"] = "+arr2[x]+";");
}
}
}
class ArrayTest
{
public static void printArray(int[] arr)
{
System.out.print("[");
for(int x=0; x<arr.length(); x++)
{
if(x!=arr.length()-1)
System.out.print(arr[x]+", ");
else
System.out.println(arr[x]+"]");
}
}
public static void main(String[] args)
{
int[] arr = {4,1,8,7,3,8,2};
printArray(arr);
reverseArray(arr);
printArray(arr);
}
public static void reverseArray(int[] arr)
{
for(int start=0,end=arr.length()-1; start<end; start++,end--)
{
swap(arr,start,end);
}
}
public static void swap(int[] arr,int a,int b)
{
int temp = arr[a];
}
}
作者:
轻语。
时间:
2014-6-23 22:20
这么长一段 没的一句注释。
数组的length是属性不是方法。
arr.length() 错。
作者:
踏雪风暴
时间:
2014-6-23 23:19
本帖最后由 踏雪风暴 于 2014-6-23 23:21 编辑
建议代码注释或者截取一部分(有问题的),我都看晕了
对于length
首先,length为属性,length()为方法,length 在数组中是属性,表示长度length()方法是在字符串中表示长度的
再是,个人不建议这样int[]arr1=new int[]{1,3,5,7}; 定义数组,C#语言已经不支持这种方式,虽然java还是支持的
解决方案: 将所有的length() 改为length,通过此可以运行处结果
我已经帮你 运行出结果了:
[4, 1, 8, 7, 3, 8, 2]
[4, 1, 8, 7, 3, 8, 2]
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2