参考(整理)于:https://www.runoob.com/java/java-array.html
Java数组
在Java 语言中数组是用来存储固定大小的同类型元素。
声明数组变量
dataType[] arrayRefVar; // 首选的方法
或
dataType arrayRefVar[]; // 效果相同,但不是首选方法
注意: 建议使用 dataType[] arrayRefVar 的声明风格声明数组变量。 dataType arrayRefVar[] 风格是来自 C/C++ 语言
创建数组
Java语言使用new操作符来创建数组,语法如下:
arrayRefVar = new dataType[arraySize];
数组变量的声明,和创建数组可以用一条语句完成,如下所示:
dataType[] arrayRefVar = new dataType[arraySize];
或
dataType[] arrayRefVar = {value0, value1, ..., valuek};
数组作为函数的返回值
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或者任何面向对象的语言找中,超类的变量都可以存储子类类型对象,这也称为多态
如下,定义了一个存储整形数据的集合
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类的构造方法
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并用循环遍历后端返回的数据
<block wx:for="{{ListData}}" wx:key="key">
<view>{{item}}</view>
</block>
js文件中事件请求处理
数据获取成功