Java:常见数组处理代码

package text1;
import java.util.Arrays;
import java.util.Scanner;

public class Array {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		Scanner input = new Scanner (System.in);
		System.out.println("一维数组元素个数:");
		int count = input.nextInt();
		
		int [] nums = new int [count];
		System.out.println("初始化一维数组:");
		for (int i = 0; i<count; i++) {
			nums[i] = input.nextInt();
		}
		
		Array arrays = new Array();
		arrays.max(nums); //找数组中最大值
		arrays.avg(nums); //求数组平均值
		arrays.copy(nums); //复制数组
		arrays.inorder(nums); //数组倒序
		
		System.out.println("二维数组元素个数:");
		int con = input.nextInt();
		int [][] num1 = new int [con][con];
		int [][] num2 = new int [con][con];
		
		System.out.println("初始化二维数组1:");
		for (int i = 0; i<con; i++) {
			for (int j = 0; j<con; j++) {
				num1[i][j] = input.nextInt();
			}
		}
		System.out.println("初始化二维数组2:");
		for (int i = 0; i<con; i++) {
			for (int j = 0; j<con; j++) {
				num2[i][j] = input.nextInt();
			}
		}
		
		
		arrays.multiply(num1,num2,con); //二维数组相乘
		
	}
	
	public void max (int [] nums) {
		int tem = nums[0];
		for (int i = 0; i<nums.length; i++) {
			if (tem <nums[i]) {
				tem = nums[i];
			}
		}
		System.out.println ("数组最大值:" + tem);
	}
	
	public void avg (int [] nums) {
		int len = nums.length;
		int sum = 0;
		for (int i = 0; i<len; i++) {
			sum += nums[i];
		}
		int avge = sum/len;
		System.out.println("数组平均值:" + avge);
	}
	
	public void copy (int [] nums) {
		int len = nums.length;
		int [] nums2 = new int [len];
		for (int i = 0; i<len; i++) {
			nums2[i] = nums[i];
		}
		System.out.println ("复制数组:" + Arrays.toString(nums2));
	}
	
	public void inorder (int [] a) {
		int len = a.length;
		int tem;
		
		for (int i = 0; i<len/2; i++) {
			tem = a[len-1-i];
			a[len-i-1] = a[i];
			a[i] = tem;
		}
		
		System.out.println ("数组倒序:" + Arrays.toString(a));
	}
	
	public void multiply (int [][] num1,int [][] num2,int len) {
		int [][] mul = new int [len][len];
		for (int i = 0; i<len; i++) {
			for (int j = 0; j<len; j++) {
				for (int k = 0; k<len; k++) {
					mul[i][j] += num1[i][k]*num2[k][j];
				}
			}
		}
		System.out.println ("二维数组相乘:" );
		for (int i = 0; i<len; i++) {
			for (int j = 0; j<len; j++) {
				System.out.print(mul[i][j] + " ");
			}
			System.out.println();
		}
	}

}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值