java数组

java数组

java数组分为一维数组和多维数组

一维数组:

数组的概念与定义

数组的内存结构分配及特点

数组的常见问题

数组的常见操作

数组的概念

  1. 数组就是同一种数据的集合(可以理解为一个容器)
  2. 数组的好处:程序会自动给数组中的元素分配从0开始的下标,方便操作

数组的定义

定义数组的基本语法格式 如下:
格式一: 元素类型[] 数组名=new 元素类型[数组长度];

               int[]  a=new int[3];
                     a[0]=10;
                     a[1]=15;
                     a[2]=20;

格式二:元素类型[] 数组名=new 元素类型[]{元素,元素,……};

         int[] a=new int[]{1,5,9};
         int[] a={1,5,9};
      // 这种方法称之为  静态初始化方式

内容结构特点

Java程序在运行时需要给内存分配空间。为了提高运算效率又对空间进行了不同区域的划分,因为每一片区域都有了特定的处理数据和内存的方式。
java中分配了以下五片空间:

栈内存:
用于存储局部变量,当数据使用完毕内存会自动释放;

堆内存:
1:数组和对象,用过new关键字创建的对象实体都存放在堆内存中,
2:每个实体都有内存地址
3:实体中的变量都有默认的初始化值
4:如果实例不在被使用java会自动启动垃圾回收器将垃圾回收

方法区 >>本地方法区 >>寄存器

在这里插入图片描述
数组中常见问题

  1. 在操作数组是注意数组的长度,不要出现数组下标越界异常
  2. 在操作中不要出现空指针异常

如何操作数组

通过for循环逐个取出数组中的值

     int[]  array={11,15,13};      
     for(int a=0;a<3;a++){
     	System.out.println(“array[”+a+”]=”+array[a]);
     }

在数组中提供了一个可以直接获取数组长度的属性 ”length“,我们只需要通过 “数组名.length”可以直接获取数组个数。如下:

    int[]   array={15,20,5,3,6,7,9,8,14};
    for(int a=0;a<array.length;a++){
    	System.out.println(“array[”+a+”]=”+array[a]);
    }

获取数组中的最大值

 	   	int[]  array={15,20,14,8,9,10,32};
            int max=array[0];
		 for(int a=1;a<array.length;a++){
			 if(max < array[a]){
				 max=array[a];
			 }
		 }
		 System.out.println(max);

获取数组中的最小值

		int[]  array={15,20,14,8,9,10,32};
            int max=array[0];
		 for(int a=1;a<array.length;a++){
			 if(max > array[a]){
				 max=array[a];
			 }
		 }
		 System.out.println(max);

数组的排序方式

java中数组的排序方法

  • 选择排序法

  • 冒泡排序法

  • 快速排序法

选择排序

从0下标开始,依次和后面元素比较,小的往前放,第一次完毕,最小值出现在了最小下标处,实例如下:

		  int[]  array={15,20,14,8,9,10,32};
              for(int a=0;a<array.length-1;a++){
		  for(int b=a+1;b<array.length;b++){
		      if(array[a]>array[b]){
		           in bijiao=array[a];
		           array[a]=array[b];
		           array[b]=bijiao;
	                }
	      	     }
               }

冒泡排序

相邻的两个元素进行比较如果符合条件就换位

	int[]  array=new int[]{15,20,14,8,9,10};
         for(int a=0;a<array.length-1;a++){
              for(int b=0;b<array.length-a-1;b++){
            	  if(array[b]>array[b+1]){
            		  int aa=array[b];  
            		  array[b]=array[b+1];
            		  array[b+1]=aa;
                      }             
                  }
          }

快速排序法

快速排序法就是运用了java中给我们提供的一个类”Arrays”下面的sort方法来实现升序排序,此方法需要导入“import java.util.Arrays;” 包。

 int[]  array={15,20,14,8,9,10,32};
      Arrays.sort(array);
      //上面这个代码就是用法
 for(int c=0;c<array.length;c++){
	System.out.println(array[c]);
 }

二维数组

数组中的数组
格式一:

 int[][] array=new int[3][5];

定义了一个名为array的二维数组
二维数组中有3个一维数组
每个一维数组的长度为5个元素

在这里插入图片描述
格式二

    int[][] array=new int[3][];
       array[0]=new int[5];
       array[1]=new int[3];
       array[2]=new int[4];

在这里插入图片描述

	int[][] array=new int[2][3]; 		    
	        array[0][0]=10;
   		    array[0][1]=12;
		   array[0][2]=12;
		   array[1][0]=15;
		   array[1][1]=14;
		   array[1][2]=16;
		for(int a=0;a<array.length;a++){
			for(int b=0;b<array[a].length;b++){
		        System.out.println(array[a][b]);
			}
		}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用 JavaScript 编写的记忆游戏(附源代码)   项目:JavaScript 记忆游戏(附源代码) 记忆检查游戏是一个使用 HTML5、CSS 和 JavaScript 开发的简单项目。这个游戏是关于测试你的短期 记忆技能。玩这个游戏 时,一系列图像会出现在一个盒子形状的区域中 。玩家必须找到两个相同的图像并单击它们以使它们消失。 如何运行游戏? 记忆游戏项目仅包含 HTML、CSS 和 JavaScript。谈到此游戏的功能,用户必须单击两个相同的图像才能使它们消失。 点击卡片或按下键盘键,通过 2 乘 2 旋转来重建鸟儿对,并发现隐藏在下面的图像! 如果翻开的牌面相同(一对),您就赢了,并且该对牌将从游戏中消失! 否则,卡片会自动翻面朝下,您需要重新尝试! 该游戏包含大量的 javascript 以确保游戏正常运行。 如何运行该项目? 要运行此游戏,您不需要任何类型的本地服务器,但需要浏览器。我们建议您使用现代浏览器,如 Google Chrome 和 Mozilla Firefox, 以获得更好、更优化的游戏体验。要玩游戏,首先,通过单击 memorygame-index.html 文件在浏览器中打开游戏。 演示: 该项目为国外大神项目,可以作为毕业设计的项目,也可以作为大作业项目,不用担心代码重复,设计重复等,如果需要对项目进行修改,需要具备一定基础知识。 注意:如果装有360等杀毒软件,可能会出现误报的情况,源码本身并无病毒,使用源码时可以关闭360,或者添加信任。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值