大家好,又见面了,我是你们的朋友全栈君。
二维数组
二维数组:就是一个由行和列组成的一个矩阵(Matrix);在这个矩阵中访问元素时,是根据元素的行角标和列角标所确定的。
二维数组在内存中的存储:无论是二维数组,还是多维数组,它们本身就是一个一维数组,只不过该一维数组中的每一个元素是另一个一维数组。
二维数组的创建:
int[][] matrix=new int[3][4]———创建一个3行4列的二维数组,元素默认都是0;
int[][] matrix=new int[][]{
{1,2,3,4} ,
{5,6,7,8} ,
{9,10,11,12}
}; ———–创建个指定元素的二维数组
或者为
int[][] matrix={
{1,2,3,4} ,
{5,6,7,8} ,
{9,10,11,12}
};
特殊:锯齿矩阵/二维数组
int[][] matrix={
{1,2,3,4} ,
{5,6,7} ,
{8,9},
{10}
};
注意:如果一个二维数组的行和列相等的话,也称之为是方阵。
习题总结
import java.util.*;
class Demo05_09{
public static void main(String[] args){
//1.输入一个3*4的矩阵
Scanner scanner=new Scanner(System.in);
System.out.println(“Enter numbers:”);
double[][] matrix=new double[3][4];
for(int i=0;i
class Demo05_10{
public static void main(String[] args){
int[][] m={
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10,11,12},
{13,14,15,16}
};
//主对角线
int sum=0;
for(int i=0;i
class Demo05_11{
public static void main(String[] args){
double[][] A={ //m*p
{1,2,3},
{4,5,6},
{7,8,9}
};
double[][] B={ //p*n
{0,2.0,4.0},
{1,4.5,2.2},
{1.1,4.3,5.2}
};
double[][] C=new double[A.length][B[0].length];//m*n
for(int i=0;i
import java.util.*;
class Demo05_12{
public static void main(String[] args){
//1.输入方针的尺寸 创建方阵
Scanner scanner=new Scanner(System.in);
System.out.print(“Enter size:”);
int size=scanner.nextInt();
int[][] m=new int[size][size];
//2.随机的给方阵中填入0或1
Random random=new Random();
for(int i=0;i
import java.util.*;
class Demo05_13{
public static void main(String[] args){
Scanner scanner=new Scanner(System.in);
System.out.print(“Enter row ,col:”);
int row=scanner.nextInt();
int col=scanner.nextInt();
int[][] m=new int[row][col];
for(int i=0;i=3&&j<=m[0].length-4){
boolean flag=true;
for(int r=i-1,c=j+1;c<=j+3;r–,c++){
if(m[i][j]!=m[r][c]){
flag=false;
break;
}
}
if(flag){
return true;
}
}
}
}
return false;//四个方向都没有连续的
}
}
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/139921.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...