gpt4 book ai didi

java - 在 SQLite 数据库中存储数组的 ArrayList

转载 作者:行者123 更新时间:2023-11-30 11:25:14 28 4
gpt4 key购买 nike

我的问题与在 SQLite 中存储数组和 ArrayLists 有关。我有一个目标类(class)如下:

public class Course {
private String name;
private ArrayList<Tee> tees;

其中包含 Tee 的 ArrayList,其中 Tee 如下所示:

public class Tee {
private String Name;
private int Slope;
private double Rating;
private int[] Par={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
private int[] HCP={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};

每个类(class)都有多个与其关联的 Tees,每个 Tee 包含 2 个整数数组。我想在 SQLite 数据库中存储类(class)列表。数据库的每一行将代表一个类(class)并包含类(class)对象数据。我对此进行了研究,发现信息太少或太多都没有帮助。

我想我需要使用 JSON 对象或 BLOB 将 ArrayLists 转换为可以存储在 SQLite 中的东西,但我似乎无法找到将 int 数组转换为这样的东西的方法(BLOB 或JSON 对象还是 JSON 数组?)然后将后续的 Tees 列表转换成另一个东西(BLOB 等)

最佳答案

创建多个表。

一个表 ('Cource') 包含字段 'name' 和带有引用的字段('id' 字段)到表 'Tee' 中的行。

表“Tee”包含字段“id”、“name”、“slop”、“rating”、“par”和“hcp”。

由于不可能在表格行中存储数组,您可以:

  • 将数组转换为字符串
  • 为数组中的每一项创建一个字段

    StringBuilder b = new StringBuilder(); for(int i = 0; i < array.length - 1; i++) { 如果(我!= 0){ b.追加(“,”); } b.append(数组[i]); } 字符串 stringArr = b.toString();

关于java - 在 SQLite 数据库中存储数组的 ArrayList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20351218/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com