我想为锻炼编写一个应用程序,我需要为类图提供一些建议。我希望用户能够在健身房使用该应用程序。用户将开始锻炼,进行任意数量的锻炼,每个锻炼都有任意数量的锻炼。
我想到的方式是这样的:
- 每次锻炼都有日期和时间。这使得即使用户每天工作超过一次,它们也是唯一的。
- 每个练习都有一个名字。
- 每组都有一个重量和一个重复计数。
示例:
20xx-XX-XX XX:XX(锻炼) 深蹲(运动) 100x5(套) 100x5(套) 100x5(套) 卧推(运动) 50x8(套) 50x8(套) 50x8(套)
那么,将所有这些放在一起的最佳方法是什么?我想也许每个锻炼都可以有一个带有练习的地图作为键和包含集合作为值的arraylists。这是一个好的解决方案吗?或者有更好的解决方案吗?
答案 0 :(得分:2)
class User
{
List<Workout> _workouts;
}
class Workout
{
Date _startdate;
Date _enddate;
Map<Exercise,List<Set>> _exercises;
}
class Exercise
{
String _name;
}
abstract class Set
{
abstract int getTotal();
}
class WeightSet extends Set
{
int _weight;
int _reps;
@override
public String toString() {return _weight + "X" + _reps;}
}
class CardioSet extends Set
{
int _durationInSeconds;
int _distance;
}