当前位置: 首页 > 面试题库 >

Parcelable的readInt(),readFloat()等是否知道它们正在检索什么值?

谢叶五
2023-03-14
问题内容

如果您的类实现了可打包的,那么您就知道系统需要一个构造函数来根据刚刚收到的包裹构造您的类。

因此,通常必须像下面这样构造一个构造函数,这会使它有些混乱:

public myClass(Parcel in){
   this.type = in.readInt();
   this.size = in.readInt();
}

您会看到是否有一个参数,并且这些与读取相关的方法的调用方式如下:

   this.type = in.readInt(type);
   this.size = in.readInt(size);

然后就很清楚发生了什么,但是,它们根本没有任何参数。所以我想知道:这应该怎么做?这些方法是否在某种程度上是“智能”的,您不必告诉他们要获得哪个领域,他们总是会设法找到合适的领域?

还是顺序的?如果我这样使用它:

   this.size = in.readInt();
   this.type = in.readInt();

我要去的田地都弄乱了吗?如果是这种情况,这不是在乞求错误吗?由于粗心大意的错误,我可能会做错很长时间的事情,却又过了一段时间才发现呢?


问题答案:

顺序很重要。必须以相同的顺序读取所有写入。

如果是这种情况,这不是在乞求错误吗?由于粗心大意的错误,我可能会做错很长时间的事情,却又过了一段时间才发现呢?

确实



 类似资料:
  • 问题内容: public static final Parcelable.Creator CREATOR = new Parcelable.Creator () { public MyParcelable createFromParcel(Parcel in) { return new MyParcelable(in); } 在我的Android课程中,讲师使用了这段代码,他们并没有对此做充分的解

  • 我想发送用户的电子邮件检查副本 这是我的背部控制器 这是我的前控制器 这是我的观点 当我使用“console.log”检查时,前端控制器可以正确地获取用户的电子邮件。但是在后面的控制器中,RequestParam什么都没有,只有NULL没有错误代码,除了'nullPointerException'。 我想这不是沟通错误。我是不是错过了什么?谢了!

  • 这是一个相当简单的问题,但我不能就此罢休。我最近又开始使用C语言了(一开始并没有太多的经验),所以我可以更好地理解引擎盖下发生的事情。我当然知道,argc和argv在传递给main()时,分别表示参数计数和参数向量。我想弄清楚的是编译器如何将int argc解释为从命令行传递的参数数。如果我编写了一个简单的函数,试图模拟main(即int testfunc(int argc,char*argv[]

  • 本文向大家介绍如何知道是否在Javascript集中搜索值?,包括了如何知道是否在Javascript集中搜索值?的使用技巧和注意事项,需要的朋友参考一下 JavaScript中的Set类提供了一个has方法来搜索给定set对象中的元素。此方法可以如下使用- 示例 输出结果

  • 问题内容: 我正在研究Swing程序中文本组件的结构。 据我了解,本质上分为视图和模型。该模型是实现的类的实例,该类包含所有文本并提供操作文本的方法,而View则以可视方式呈现文本。 但是我不知道使用an的确切位置,方式和原因。我不确定是否封装(“拥有”)模型(),或者文档是否封装了模型。而且不确定所有这些视图在哪里适合。 有两个问题: 1- 请描述视图之间的关系和在。什么封装了什么,什么与什么相

  • 本文向大家介绍你知道什么是流体排版吗?说说它的原理是什么?相关面试题,主要包含被问及你知道什么是流体排版吗?说说它的原理是什么?时的应答技巧和注意事项,需要的朋友参考一下 在文档流中,内联元素按内联方向显示,即词语在依据文件写作模式的句子中表示的方向。块元素则一个接一个地显示,就像该文档的写作模式中的段落一样。因此在流体排版中,内联元素从左边开始一个接一个地显示,块元素从顶部开始向下显示并移动页面