目录
  1. 1. Java数组
  2. 2. Java集合
    1. 2.0.1. 集合框架体系如下图所示
      1. 2.0.1.1. Java集合存储对象
      2. 2.0.1.2. 应用:小程序获取集合数据
      3. 2.0.1.3. 每天进步一点点,今天就分享到这里了。“人没有白学的东西,每一点都算数!”
Java中的数组与集合

参考(整理)于:https://www.runoob.com/java/java-array.html

Java数组

在Java 语言中数组是用来存储固定大小的同类型元素。

声明数组变量

1
2
3
dataType[] arrayRefVar;   // 首选的方法

dataType arrayRefVar[]; // 效果相同,但不是首选方法

注意: 建议使用 dataType[] arrayRefVar 的声明风格声明数组变量。 dataType arrayRefVar[] 风格是来自 C/C++ 语言

创建数组
Java语言使用new操作符来创建数组,语法如下:

1
arrayRefVar = new dataType[arraySize];

数组变量的声明,和创建数组可以用一条语句完成,如下所示:

1
2
3
dataType[] arrayRefVar = new dataType[arraySize];

dataType[] arrayRefVar = {value0, value1, ..., valuek};

数组作为函数的返回值

1
2
3
4
5
6
7
8
public static int[] reverse(int[] list) {
int[] result = new int[list.length];

for (int i = 0, j = result.length - 1; i < list.length; i++, j--) {
result[j] = list[i];
}
return result;
}

Java集合

Java 集合框架主要包括两种类型的容器,一种是集合(Collection),存储一个元素集合,另一种是图(Map),存储键/值对映射。Collection 接口又有 3 种子类型,List、Set 和 Queue,再下面是一些抽象类,最后是具体实现类,常用的有 ArrayList、LinkedList、HashSet、LinkedHashSet、HashMap、LinkedHashMap 等。

集合框架是一个用来代表和操纵集合的统一架构。所有的集合框架都包含如下内容:

  • 接口: 是代表集合的抽象数据类型。例如 Collection、List、Set、Map 等。之所以定义多个接口,是为了以不同的方式操作集合对象
  • 实现(类): 是集合接口的具体实现。从本质上讲,它们是可重复使用的数据结构,例如:ArrayList、LinkedList、HashSet、HashMap。
  • 算法: 是实现集合接口的对象里的方法执行的一些有用的计算,例如:搜索和排序。这些算法被称为多态,那是因为相同的方法可以在相似的接口上有着不同的实现。

除了集合,该框架也定义了几个 Map 接口和类。Map 里存储的是键/值对。尽管 Map 不是集合,但是它们完全整合在集合中。

集合框架体系如下图所示

在这里插入图片描述
Java 集合框架提供了一套性能优良,使用方便的接口和类,java集合框架位于java.util包中, 所以当使用集合框架的时候需要进行导包(Alt + Enter)
List和ArrayList主要区别是List是一个接口,而ArrayList是一个类,而且继承于List。这也意味着ArrayList是List的子类,在Java或者任何面向对象的语言找中,超类的变量都可以存储子类类型对象,这也称为多态

如下,定义了一个存储整形数据的集合

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package com.example.demo.list;

import java.util.ArrayList;

/**
* 集合与数组主要区别是:集合相当于动态的数组
*/

public class ListStudy {
public static void main(String[] args) {
ArrayList<Integer> list=new ArrayList<>();
//等效于==> List<Integer> list=new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);

for (int i=0;i<list.size();i++)
{
System.out.println(list.get(i));
}
System.out.println("集合长度为:"+list.size());//集合长度
System.out.println("集合第一个元素为:"+list.get(0));//集合第一个元素

}
}
/**
* 运行结果:
* 1
* 2
* 3
* 集合长度为:3
* 集合第一个元素为:1
*/
Java集合存储对象

新建一个ListObject类并定义了name和age两个属性,生成对应的get、set方法和ListObject类的构造方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package com.example.demo.list;

public class ListObject {
private String name;//ListObject类的属性
private int age;

//Alt + Insert -->constructor,ListObject类的构造方法
public ListObject(String name, int age) {
this.name = name;
this.age = age;
}

/**
* Alt + Insert-->Getter and Setter
* 生成get和set两个方法,对类的属性进行赋值(setName)和取值(getName)
*/
public String getName() {
return name;
}

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

public int getAge() {
return age;
}

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

调用ListObject类
在这里插入图片描述

应用:小程序获取集合数据

Java后台程序,定义一个可供外部访问的getList方法(该方法返回一个List(列表)),在该方法中定义一个list集合
在这里插入图片描述
如下,在小程序(前端)wxml中,添加一个block并用循环遍历后端返回的数据

1
2
3
<block wx:for="{{ListData}}" wx:key="key">
<view>{{item}}</view>
</block>

js文件中事件请求处理
在这里插入图片描述
数据获取成功
在这里插入图片描述

每天进步一点点,今天就分享到这里了。“人没有白学的东西,每一点都算数!”
文章作者: 遇见0和1
文章链接: http://vogos.cn/2020/02/13/Java%E4%B8%AD%E7%9A%84%E6%95%B0%E7%BB%84%E4%B8%8E%E9%9B%86%E5%90%88/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 遇见0和1の个人客栈
打赏
  • 微信赞赏
  • 我的公众号

评论