黑马程序员技术交流社区

标题: 【成都校区*精品*数组的白话讲解】 [打印本页]

作者: 小蜀哥哥    时间: 2018-7-19 14:15
标题: 【成都校区*精品*数组的白话讲解】
本文章作为数组的入门讲解,通俗易懂,很适合Java零基础的朋友们阅读。


Java中的数组到底是什么,该怎么使用,这些问题时常困扰着初学Java语言的朋友,殊不知其实数组是非常简单的一个小知识,朋友们在学习数组的时候,能把下列的三点弄明白,就可以入门了,接下来咱们就快速学习一下数组吧。

2、怎么写一个数组
刚才大家也都大概的清楚的知道了,其实Java中的数组就是所谓的容器,和我们现实生活中的容器是一样的东西。我们什么时候需要使用数组容器呢,很简单,当我们想要将众多的数据好好的管理起来的时候,我们就需要数组容器将这些众多的数据存储起来,方便去使用。接下来我们就来看看数组容器是怎么在我们Java中创建出来的呢?
[Java] 纯文本查看 复制代码
/*
创建数组一共有三种格式
格式一:元素的数据类型[] 数组的名字 = new 元素的数据类型[数组的长度];
变形:元素的数据类型 数组的名字[] = new 元素的数据类型[数组的长度];
说明:
        元素:是指数组容器中存储的每一个数据,就是一个个元素
        元素的数据类型:就是存储数据的数据类型
        数组的名字:是我们自己起的
        new:在堆内存中开辟空间,就要使用new
        数组的长度:就是数组容器中存储了多少个数据的个数
*/
int[] arr = new int[5];
String[] strs = new String[5];
Person[] persons = new Person[5];
/*
格式二:元素的数据类型[] 数组的名字 = new 元素的数据类型[]{元素1,元素2,......};
注:对于创建数组容器的格式二来说,第一个中括号[]和第二个中括号[]里都不要写东西
*/
int[] arr = new int[]{1,2,3,4,5};
String[] strs = new String[]{"aaa","bbb","ccc"};
Person[] persons = new Person[]{new Person(),new Person(),new Person()};
/*
格式三:元素的数据类型 数组的名字 = {元素1,元素2,......};
*/
int[] arr = {1,2,3,4,5};
String[] strs = {"aaa","bbb","ccc"};
Person[] persons = {new Person(), new Person(), new Person()};

3.怎么使用一个数组
在我们现实生活中,其实使用容器无非就是往容器里面装东西,或者将东西从容器中拿出来,在Java中也是如此,当一个数组容器存在的时候,我们就需要向容器里面存储一点东西了,这些东西在Java中就是各种数据,怎么存呢?咱们来看一下。
[Java] 纯文本查看 复制代码
/*
向数组容器中装东西,要使用数组的索引,索引是从0开始的
*/
int[] arr = new int[5];
arr[0] = 2;
arr[1] = 5;
arr[2] = 1;
arr[3] = 4;
arr[4] = 3;

那我们怎么能拿到数组容器中的东西呢?咱们来看一下。
[Java] 纯文本查看 复制代码
/*
想要获取数组容器中的东西,也要使用索引
*/
int[] arr = {1,2,3,4,5};
int i1 = arr[0];
System.out.println(i1);
int i2 = arr[1];
System.out.println(arr[2]);
System.out.println(arr[3]);
System.out.println(arr[4]);

/*
通过以上的方式是完全可以取出容器中的东西,但是对于咱们这么懒的人,会感觉到麻烦,那就换一种简单的方式就可以获取一个数组容器中所有的东西的方法。
*/
//length是数组的属性,直接数组名字就可以调用,功能是得到数组的长度
for(int i = 0; i < arr.length; i++) {
        System.out.println(arr);
}

之前的例子都是存储int基本数据类型,接下来看一看如何使用数组装引用数据类型对象
[Java] 纯文本查看 复制代码
class Person {
  pirvate String name;
  private int age;

  public Person() {}

  public Person(String name, int age) {
      this.name = name;
      this.age = age;
  }

  public void setName(String name) {
      this.name = name;
  }

  public String getName() {
      return this.name;
  }

  public void setAge(int age) {
      this.age = age;
  }

  public int getAge() {
      return this.age;
  }
}
class Demo {
  public static void main(String[] args) {
      Person[] persons = new Person[3];
      Person p1 = new Person("张三", 18);
      Person p2 = new Person("李四", 19);
      Person p3 = new Person("王五","20");
      persons[0] = p1;
      persons[1] = p2;
      persons[2] = p3;
      for(int i = 0; i < persons.length; i++) {
          Person p = persons;
          System.out.println(p.getName() + "..." + p.getAge());
      }
  }
}
如果朋友们能把以上的内容掌握的话,那就算是数组入门成功了,剩下的其实只是针对一些关于数组的练习题,朋友们自己多练习练习就可以了。

以上内容就是本章要给大家讲解的知识点,内容不多,但可以帮助大家尤其是零基础的朋友们学好Java基础中的数组,最后祝愿每一位学习Java的朋友们马到成功,更上一层楼。













欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2