Java数组数据类型(复习2)

代码1:数组内容的动态初始化与静态初始化。
class ArrayDemo1
{
	public static void main(String[] args)
	{
		//数组内容 动态初始化
		int[] intA=new int[2];
		intA[0]=88;//数组下标值域为	0 到  数组长度-1
		intA[1]=99;
		//JDK1.5 新增 foreach 功能 可用于数组与集类
		for(int i:intA)
		{
		 System.out.printf(i+"、");
		}
		System.out.println();
		//数组内容 静态初始化
		int[] intB={66,77};
		for(int i:intB)
		{
		 System.out.printf(i+"、");
		}
		//我很好奇二维数组的 ... 嘿嘿
		int[][] intC={{1,2},{3,4}};
		System.out.println();
		/**
		这段代码很不幸的出错了,foreach貌似没有我想象中聪明
		for(int i:intC[])
		{
		 System.out.printf(i+"、");
		}
		*/
		//But this right^^哈哈,看来 foreach 对于多维支持不好
		for(int i:intC[0])
		{
		 System.out.printf(i+"、");
		}
		System.out.println();
		//对于多维还是普通for循环好哇^^
		for(int i=0;i<intC.length;i++){
			for(int j=0;j<intC[i].length;j++){
				System.out.printf(intC[i][j]+"、");
			}
		}
	}
}


代码2:数组长度的动态初始化与静态初始化。
class ArrayDemo2
{
	static int sum=0; 
	public static void main(String[] args){
	//数组长度 动态初始化
	//由Java应用程序接收 int型参数 完成求和
	//个人觉得方法的参数的类型其实可以看做数组
	if(args.length>0){//控制应用程序没接收到参数时报错
	System.out.println(args[0]);
	//System.out.println(args[1]);
	//cmd:java ArrayDemo2 1 2
	//result:1 2
	//哇哈哈,试验得知,方法的参数就是一个数组
	System.out.println(checkArgsToSum(args));
	}
	//数组长度 静态初始化
	int[] intA=new int[3];//开辟数组空间时,系统默认给所有数组元素赋0值
	for(int i:intA){
		System.out.println(i);
	}
	}																
	public static int checkArgsToSum(String[] args){
		if(args.length<2){
			return Integer.parseInt(args[0]);
			//break; //err, must be in switch or loop
			//这里我理解错误,其实前面的return早已结束了这个方法^^
		}
		for(String s:args){
		   int temp=Integer.parseInt(s);
		   if (temp<Integer.MIN_VALUE && temp>Integer.MAX_VALUE)
			{
			System.out.println("输入求和的参数非int型!");
			}
		   else
			{
			sum+=temp;					 
			}		   
		}
		return sum;	//语句块外写,因为方法有返回值,放语句块里,方法捕获不了
	}
}

注:代码2中
if (temp<Integer.MIN_VALUE && temp>Integer.MAX_VALUE)
{
System.out.println("输入求和的参数非int型!");
}
判断机制是伪代码^^

你可能感兴趣的:(java)