【问题标题】:How can I store an integer two-dimensional array in SharedPreferences?如何在 SharedPreferences 中存储整数二维数组?
【发布时间】:2014-02-21 05:54:34
【问题描述】:

我有一个整数二维数组,我想将它存储在 SharedPreferences 中。有人可以告诉我示例代码如何做到这一点吗?我想如果我将它转换为字符串是可能的,但它适用于一维整数数组。也许还有其他方法可以做到这一点?谢谢。

【问题讨论】:

  • 您也可以将二维数组转换为字符串并返回。

标签: android arrays sharedpreferences


【解决方案1】:

如您所说,将二维数组转换为字符串即可。但是,如果您在处理更复杂的对象时遇到同样的问题,您始终可以使用 GSON 库将其转换为字符串。

下载:Link

另一个帖子:Link

如果要将二维数组传递给字符串,可以在将其存储到 StringBuffer 的同时对其进行迭代,例如:

StringBuffer results = new StringBuffer();
String separator = ","
float[][] values = new float[50][50];

// init values

for (int i = 0; i < values.length; ++i)
{
  result.append('[');
  for (int j = 0; j < values[i].length; ++j)
    if (j > 0)
      result.append(values[i][j]);
    else
      result.append(values[i][j]).append(separator);
  result.append(']');
}

result.toString(); //<- Save this in your preference

【讨论】:

  • 但是二维数组是如何工作的呢?你能给我它的示例代码吗?
  • @user3248705 我添加了一个简单的代码来将二维数组传递给字符串。在向后的方式中,你应该寻找 "[" , "]" 和 "," 来再次填充你的数组
猜你喜欢
  • 2011-11-02
  • 2017-03-03
  • 2012-05-06
  • 1970-01-01
  • 1970-01-01
  • 2016-11-07
  • 2014-01-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多