为了账号安全,请及时绑定邮箱和手机立即绑定

CodenameOne 中是否可以保存多维数组?

CodenameOne 中是否可以保存多维数组?

白衣非少年 2022-04-28 17:07:53
我知道我只能在 CodenameOne 中使用 Storage 保存少量类,但我想知道是否可以保存多维数组。
查看完整描述

1 回答

?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

没有检测到多维数组,但您可以使用手动代码保存它们,例如在您的Externalizable界面中,您可以使用诸如此类的东西来编写:


 if(myMultiArr == null) {

     out.writeInt(0);

 } else {

     out.writeInt(myMultiArr.length);

     for(int iter = 0 ; iter < myMultiArr.length ; iter++) {

         if(myMultiArr[iter] == null) {

             out.writeInt(0);

         } else {

             out.writeInt(myMultiArr[iter].length);

             for(int i = 0 ; i < myMultiArr[iter].length ; i++) {

                 out.writeInt(myMultiArr[iter][i]);

             }

         }

     }

 }

然后你可以阅读它:


 myMultiArr = new int[in.readInt()][];

 for(int iter = 0 ; iter < myMultiArr.length ; iter++) {

      myMultiArr[iter] = new int[in.readInt()];

      for(int i = 0 ; i < myMultiArr[iter].length ; i++) {

          myMultiArr[iter][i] = in.readInt();

      }

 }

请注意,此代码会将 null 值转换为长度为 0 的数组,并假定一个多维整数数组。不过,它很容易适应任何东西。


查看完整回答
反对 回复 2022-04-28
  • 1 回答
  • 0 关注
  • 155 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号