我目前正在开发一个应用程序,其中包含许多练习(用于锻炼),每个练习包含 5 个不同的字符串。它们链接到基本上是一系列练习的锻炼(但不止一个锻炼可以有相同的锻炼,我不想浪费内存),然后锻炼显示在不同的类别中(减肥、健身等)。 .).
如果我用 C(这是我通常使用的编程语言)做这件事,我会让练习成为一个名为练习的结构数组,然后练习将是链表,每个链接都是指向锻炼,代表次数为 int,组数为 int。锻炼将组织在指向链表第一个元素的指针数组中(因此锻炼可以分为多个类别)。有没有办法在 Java 中实现类似的东西?
最佳答案
从您在 c 中的方法向后工作,为什么不使用类似的东西:
class Exercise {
private String exName;
private int reps;
private int sets;
并制作一个构造函数:
public Exercise(String newName, int newReps, int newSets) {
exName = newName;
reps = newReps;
sets = newSeats;
这确实是唯一与 c 不同的部分。
在这里,您所做的只是创建一个包含必要信息、重复次数和组数的练习对象。
构造函数创建对象的新实例。
然后您可以只使用常规数组列表作为练习列表和锻炼列表。
所以你最终得到了一些你可以想象的东西:
[[Exercise1, Exercise2, ...][Exercise1, Exercise2, ....]...]
因此,最外层的列表是您的锻炼数组列表,内部列表是每次锻炼的锻炼数组列表,每个锻炼都是一个结构,其中包含一个(可选)名称及其重复次数和组数列表。
关于用于 Android 应用程序的 Java 多维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30946518/