android传递接口,Android最简单数据传递之通过实现Serializable接口

通过实现Serializable接口

利用Java语言本身的特性,通过将数据序列化后,再将其传递出去。

实体类:

public class Person implements Serializable {

private String name;

private int age;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

}

1,设置参数

//1.通过Serializable接口传参数的例子

//HashMapmap2 = new HashMap<>();

//map2.put("key1", "value1");

//map2.put("key2", "value2");

//Bundle bundleSerializable = new Bundle();

//bundleSerializable.putSerializable("serializable", map2);

//Intent intentSerializable = new Intent();

//intentSerializable.putExtras(bundleSerializable);

//intentSerializable.setClass(MainActivity.this,

//SerializableActivity.class);

//startActivity(intentSerializable);

//2.通过Serializable接口传递实体类

Person person = new Person();

person.setAge(25);

person.setName("lyx");

Intent intent2 = new Intent(MainActivity.this, SerializableActivity.class);

intent2.putExtra("serializable", person);

startActivity(intent2);

2,接收参数

this.setTitle("Serializable例子");

//接收参数

//1.接收集合

// Bundle bundle = this.getIntent().getExtras();

//如果传 LinkedHashMap,则bundle.getSerializable转换时会报ClassCastException,不知道什么原因

//传HashMap倒没有问题。

//HashMapmap = (HashMap) bundle.getSerializable("serializable");

//

//String sResult = "map.size() =" + map.size();

//

//Iterator iter = map.entrySet().iterator();

// while (iter.hasNext()) {

// Map.Entry entry = (Map.Entry) iter.next();

// Object key = entry.getKey();

// Object value = entry.getValue();

// //System.out.println("key---->"+ (String)key);

// //System.out.println("value---->"+ (String)value);

//

// sResult += "\r\n key----> " + (String) key;

// sResult += "\r\n value----> " + (String) value;

// }

//2.接收实体类

Person person = (Person) getIntent().getSerializableExtra("serializable");

String sResult = "姓名:" + person.getName() + "--年龄:" + person.getAge();

TextView tv = findViewById(R.id.tv);

tv.setText(sResult);

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值