当前位置: 首页 > news >正文

用dedecms做的网站北京整站线上推广优化

用dedecms做的网站,北京整站线上推广优化,传奇手游sf999发布网,北京谷歌优化1.数组的定义 在Java中,数组是一种相同数据类型的集合。数组在内存中是一段连续的空间。 2.数组的创建和初始化 2.1数组的创建 在Java中,数组创建的形式与C语言又所不同。 Java中数组创建的形式 T[] 数组名 new T[N]; 1.T表示数组存放的数据类型…

1.数组的定义

在Java中,数组是一种相同数据类型的集合。数组在内存中是一段连续的空间

2.数组的创建和初始化

2.1数组的创建

在Java中,数组创建的形式与C语言又所不同。

Java中数组创建的形式

T[] 数组名 = new T[N];

1.T表示数组存放的数据类型。

2.T[]表示数组的类型。

3.N表示数组的长度。 

2.2数组的初始化

数组的初始化分为动态初始化静态初始化两种。

2.2.1 动态初始化

动态初始化就是在创建数组的时候,直接指定数组元素的个数。

如以下代码

int[]arr=new int[10];//10就是数组元素个数

2.2.2 静态初始化 

静态初始化就是在创建数组的时候不指定数组中元素的个数,但指定数组的内容。

语法格式:

T[] 数组名称=new int[]{data1,data2,data3.....};

举例说明

public static void main(String[] args) {int[] arr=new int[]{1,2,3,4,5};String[] man=new String[]{"red","man","lebron"};double[] arr2=new double[]{1.2,1.2,2.5};}

注意事项:

1.在Java中,数组在创建的同时不能同时指定数组的长度和数组的内容。否则就会报错。

public class CSDN {public static void main(String[] args) {int[] arr=new int[5]{1,2,3,4,5};String[] man=new String[4]{"red","man","lebron"};double[] arr2=new double[5]{1.2,1.2,2.5};}
}

2cdafec003e9469d86a3da41e1f677e7.png

如上面同时所示,同时指定数组的长度和数组的内容就会报错。

2.虽然静态初始化没有指定数组的长度,编译器在编译时会根据 { } 里面的元素来确定数组的长度。

3.静态初始化时,{ } 里面的元素的数据类型必须和数组创建时声明的数据类型相同。

4.静态初始化可以简写,后面的new T[]可以省略掉。

public static void main(String[] args) {int[] arr={1,2,3,4,5};String[] man={"red","man","lebron"};double[] arr2={1.2,1.2,2.5};}

 2.2.3 总结共同点

动态初始化和静态初始化都可以分两步写。

        //动态初始化分两步int[] arr;arr=new int[10];
        //静态初始化分两步写int[] arr2;arr2=new int[]{1,2,3,4,5,6};

注意:分两步进行初始化时,new T[ ] 这部分不能省略。

2.2.4 补充

1.数组的创建其实可以像C语言那样创立,但是不推荐。

2.如果数组在创建时没有初始化数组的内容,数组中元素都有默认的其对应的零值。如下表

def4d192f7574cb880240f60f1a47dd5.png

2.3 数组的访问和遍历

2.3.1数组的访问

数组在内存中是一段连续的空间,空间的编号都是从0开始,一次递增。这些编号也就是数组的下标,我们可以通过数组的下标来访问数组中的元素。

比如:

int[]array = new int[]{10, 20, 30, 40, 50};
System.out.println(array[0]);
System.out.println(array[1]);
System.out.println(array[2]);
System.out.println(array[3]);
System.out.println(array[4]);

如上面的代码所示,0,1,2,3,4就是数组的下标,我们就通过这些下标来访问数组中对应的元素。

2.3.2 数组的遍历

数组的遍历就是将数组的元素都浏览一遍。

在Java中,我们有两种遍历数组的方法。

重点:在Java中,我们可以通过 数组名.length 来获取数组的长度。

1.for循环遍历数组

public static void main(String[] args) {int[] arr=new int[]{1,2,3,4,5};for(int i=0;i<arr.length;i++){System.out.print(arr[i]+" ");}}

2.foreach循环 

 public static void main(String[] args) {int[] arr=new int[]{1,2,3,4,5};for(int x:arr){System.out.print(x+" ");}}

foreach循环的做法是遍历数组,一次将数组中的元素放入x中。

3.数组是引用数据类型

3.1JVM的内存分布

在介绍引用数据类型之前,我们先来简单介绍以下JVM的内存分布。

如下图

31b8c26a211442d181ba43d13d36d451.jpeg

这里我们就先简单了解一下虚拟机栈和本地方法栈。

本地方法栈:本质是由C/C++构造的一些方法,我们可以直接使用。

虚拟机栈:就是我们平常学习计算机语言说的栈。

3.2引用数据类型

在JAVA中,我们的数据类型分为基本数据类型和基本数据类型。

基本数据类型创建的变量被称为基本变量,其内存中存的是变量的值。

由引用数据类型创建的数据类型一般被称为对象的引用,其空间存储的是对象的地址。

什么是引用呢?

看一下代码

 public static void main(String[] args) {int[] arr=new int[]{1,2,3,4,5};System.out.println(arr);int a=10;}

我们在创建变量的时候,计算机系统都会在栈中为变量开辟内存。

如以上代码,我们创建了一个数组变量和一个int变量,那么栈就会为这两个变量分配内存。

由于int a是基本数据类型,所以创建变量是赋值的10就直接占据了为变量a开辟的内存中。

而数组是引用数据类型, 其内存可以简单理解为寸的是数组的首元素地址。

所以,引用数据类型中存的地址,我们就可以说通过array这个引用来访问数组中的元素。

60e597e813384f7eba83b39265e24e83.png

 我么再来看一段代码

 public static void main(String[] args) {int[] arr1=new int[]{1,2,3,4,5};arr1[0]=3;arr1[1]=4;int[] arr2=new int[]{10,20,30,40,50};arr2=arr1;arr1[0]=100;arr2[1]=200;for(int x:arr2){System.out.print(x+" ");}}

输出会是什么呢?

我们通过画图来分析代码

首先,我们创建了arr1数组。

3ea4eb8bbcc14c6f809bbe0f7b81442d.png

我们就可以通过arr1这个引用来访问数组中的元素。接着我们对arr1进行了数组元素中的改变。

6b76762d9d7446ff8e864074a3b68e2a.png

接着我们又创建了arr2。

8de745c320754f558c34ad92799d477c.png

我们就可以通过arr2这个引用来访问arr2中的数据。

接着就是一个重点了,我们写了一个 arr2=arr1 的代码是什么意思呢?

简单来说就是将arr1中存储的地址传给arr2,arr2中存的数据就变为了0x9了。

那样arr2就不指向arr2了,而是指向了arr1。

这时侯,我们我们同过arr1或arr2这两个引用访问的都是arr1了。

而原先arr2指向的对象由于没有了引用,其在堆占的内存就自动被计算机系统回收了。

efe6fe6ead04450285f17686d4111c81.png

所以最后两步都是对arr1数组数据的改变。

910c343ca01e40708239dd4d7defc7d1.png

运行代码

dcb58790b08642668e329b6ae1d73556.png

 4. 二维数组

4.1二维数组的创建和初始化

二维数组的创建和初始化我们直接以代码的形式介绍

public static void main(String[] args) {int[][] arr1=new int[][]{{1,2,3},{4,5,6}};int[][] arr2=new int[2][3];int[][] arr3={{1,2,3},{1,2,3}};}

主要有以上三种形式。

4.2 二维数组的遍历

 首先,我们要清楚二维数组是一个特殊的一维数组。

Java中这个定义很清楚。

我们以arr1为例。

如下图所示

bd95f92e14d44ffb8f1e9bc39ef619e6.png

arr1是一个2行3列的数组,这个二维数组可以看作是有两个一维数组组成的。

其中arr1[0] 是访问arr1这个二维数组中第一个一维数组中的引用。

arr1[1]是访问arr1这个二维数组中的第二个一维数组的引用。

第一种遍历方法 

  public static void main(String[] args) {int[][] arr1=new int[][]{{1,2,3},{4,5,6}};int[][] arr2=new int[2][3];int[][] arr3={{1,2,3},{1,2,3}};for(int i=0;i<arr1.length;i++){//打印行for(int j=0;j<arr1[i].length;j++){//打印列System.out.print(arr1[i][j]+" ");}System.out.println();}}

第二种遍历方法 

 public static void main(String[] args) {int[][] arr1=new int[][]{{1,2,3},{4,5,6}};int[][] arr2=new int[2][3];int[][] arr3={{1,2,3},{1,2,3}};for(int[] subarr1:arr1){for(int x:subarr1){System.out.print(x+" ");}System.out.println();}
}

4.3 不规则二维数组

首先,我们要知道二维数组在创建的时候,行不可以省略,列可以省略。

 public static void main(String[] args) {int arr[][]=new int[2][];arr[0]=new int[]{1,2,3};arr[1]=new int[]{4,5,6,70};for(int i=0;i< arr.length;i++){for(int j=0;j<arr[i].length;j++){System.out.print(arr[i][j]+" ");}System.out.println();}}

运行代码

2558195c0c7d4ea286cae0342eb2ae8f.png

http://www.ds6.com.cn/news/34569.html

相关文章:

  • html5手机app网站模板微信营销技巧
  • 杭州市网站建设阳江seo
  • 网站建设 视频sem推广竞价托管
  • 做空港币人民币网站上海关键词seo
  • 收到网站打入0.1元怎么做分录百度投放广告收费标准
  • 怎样做金融网站营销型网站建设案例
  • 做网站挣钱么站长之家域名信息查询
  • 推荐昆明做网站建设黄山seo推广
  • 长安外贸网站建设太原关键词优化报价
  • idea怎么做网站南宁在哪里推广网站
  • 做网站用jsp还是html网推怎么做
  • 关于建筑设计的网站广告营销包括哪些方面
  • 微信网页宣传网站怎么做打开百度一下你就知道
  • 做自己的网站发表文章后怎么能让钱赚到手是不是点击率高就可以有收入?请高人指教!感激涕零!网络营销有哪些方式
  • 做网站宽高怎么决定网站系统
  • 常州专业网站建设费用网络推广专员
  • 做网站都有什么功能昆明关键词优化
  • 长沙做网站建设公司今日早间新闻
  • 做的不错的网站互联网项目推广
  • 网站logoPS怎么做产品推广介绍
  • 做网站现在用什么软件厦门百度竞价
  • 政府网站建设招标常规模板网站搜索引擎优化情况怎么写
  • 旅游网站对比模板竞价托管的注意事项
  • 织梦做的网站如何杀毒重庆网页搜索排名提升
  • 武汉做网站优化的公司苹果被曝开发搜索引擎对标谷歌
  • 做网站你给推广一个新手怎么做电商
  • 上海网站 备案查询百度页面推广
  • 坂田网站建设费用明细搜索引擎优化策略应该包括
  • wordpress网站导航菜单插件网络营销毕业论文范文
  • 滨海做网站的公司2345网址导航官网官方电脑版下载