系列化

遥感影像分割实战:LoveDA数据集从下载到训练全流程指南(附避坑技巧) 本文以LoveDA数据集为例,提供了一份详尽的遥感影像语义分割实战指南。内容涵盖从数据下载、理解与预处理,到环境配置、模型选择与训练,再到性能调优与部署的全流程,并重点分享了多个关键环节的避坑技巧,旨在帮助开发者和研究者高效上手并解决实际问题。 阅读详情

需求分析:将一些数据保存到文件中,下次读取出来用。

实现代码:

1、TestSerializable.java文件

package com.ansdk.sdktest;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.io.StreamCorruptedException;
import java.util.ArrayList;
import java.util.HashMap;

import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class TestSerializable extends Activity {

    Button but1, but2;
    TextView tv1, tv2;
    int count = 0;
    private static String mSDCARD = null;
//  ArrayList<HashMap<String, Object>> arrayList;
//  ArrayList<HashMap<String, Object>> arrayList2;


    ArrayList<HashMap<String, Stu>> arrayList3;
    ArrayList<HashMap<String, Stu>> arrayList4;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main2);

        but1 = (Button) findViewById(R.id.but1);
        but2 = (Button) findViewById(R.id.but2);

        tv1 = (TextView) findViewById(R.id.tv1);
        tv2 = (TextView) findViewById(R.id.tv2);

//      arrayList = new ArrayList<HashMap<String, Object>>();
//      HashMap<String, Object> map = new HashMap<String, Object>();
//      map.put("id", "1");
//      map.put("name", "xuliehua");
//      HashMap<String, Object> map1 = new HashMap<String, Object>();
//      map1.put("id", "2");
//      map1.put("name", "fanxuliehua");
//      
//      arrayList.add(map);
//      arrayList.add(map1);

        HashMap<String, Stu> map3 = new HashMap<String, Stu>();
        map3.put("id", new Stu("张三",28));
        map3.put("name", new Stu("李四",108));

        HashMap<String, Stu> map4 = new HashMap<String, Stu>();
        map4.put("id", new Stu("胡七",666));
        map4.put("name", new Stu("王八",999));

        arrayList3 = new ArrayList<HashMap<String, Stu>>();
        arrayList3.add(map3);
        arrayList3.add(map4);

        String filenameString = getHcExternalFile("ddddd", "/object" + ".obj");
        final File file = new File(filenameString);

        but1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                // 序列化
                try {



                    FileOutputStream fis = new FileOutputStream(file);
                    ObjectOutputStream ois = new ObjectOutputStream(fis);
//                  ois.writeObject(arrayList);
                    ois.writeObject(arrayList3);
                    ois.close();
                    fis.close();

                    System.out.println("系列化结束");
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });

        but2.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {

                try {
                    FileInputStream fis = new FileInputStream(file);
                    ObjectInputStream ois = new ObjectInputStream(fis);
//                  arrayList2 = (ArrayList<HashMap<String, Object>>) ois.readObject();
                    arrayList4 = (ArrayList<HashMap<String, Stu>>) ois.readObject();
                    ois.close();
                    fis.close();
//                  if (arrayList2 != null) {
//                      tv2.setText(arrayList2.get(0).get("name").toString());
//                  }




                    if (arrayList4 != null) {


                        for (int i = 0; i < arrayList4.size(); i++) {
                            HashMap<String, Stu>  fffHashMap=arrayList4.get(i);

                            for (String key : fffHashMap.keySet()) {  

                                Stu sssStu=fffHashMap.get(key);
                                System.out.println("key= "+ key + " and value= " +sssStu.getAge()+" "+sssStu.getName() );  
                            }  

                        }

                        Stu ssstStu=arrayList4.get(0).get("name");

                        tv2.setText(ssstStu.getAge()+" "+ ssstStu.getName());
                    }
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }

    public static String getHcExternalFile(String subFolder, String fileName) {
        try {
            String subFolderPath = getSDCardPath() + "/handcent/" + subFolder
                    + "/";
            File fi = new File(subFolderPath);
            if (!fi.exists()) {
                fi.mkdirs();

            }
            return fi.getAbsolutePath() + fileName;
        } catch (Exception exp) {
            exp.printStackTrace();
            return null;
        }

    }

    public static String getSDCardPath() {
        if (mSDCARD == null) {
            mSDCARD = Environment.getExternalStorageDirectory().toString();
            if (mSDCARD == null) {
                mSDCARD = "/sdcard";
            }
        }
        return mSDCARD;
    }
}

class Stu implements Serializable{
    int age;
    String name;

    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Stu(){

    }

    public Stu(String n,int a){
        name=n;
        age=a;
    }
}

2、布局文件
main2.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/tv1"
        android:layout_width="130dp"
        android:layout_height="50dp"
        android:layout_gravity="center_horizontal"
        android:text="系列化"
        android:gravity="center"
        android:textColor="#0000ff"
        android:textSize="16dp" />

    <Button
        android:id="@+id/but1"
        android:layout_width="130dp"
        android:layout_height="50dp"
        android:layout_gravity="center_horizontal"
        android:layout_marginTop="3dp"
        android:text="系列化" />

    <TextView
        android:id="@+id/tv2"
        android:layout_width="130dp"
        android:layout_height="50dp"
        android:layout_gravity="center_horizontal"
        android:text="反系列化"
        android:gravity="center"
        android:textColor="#0000ff"
        android:textSize="16dp" />

    <Button
        android:id="@+id/but2"
        android:layout_width="130dp"
        android:layout_height="50dp"
        android:layout_gravity="center_horizontal"
        android:layout_marginTop="3dp"
        android:text="反系列化" />


</LinearLayout>

优化

android更好的方式是使用Parcelable;

语言模型推理能力与计算表达力深度解析 语言模型的推理能力本质上是一种知识迁移与泛化应用的过程,其核心在于Transformer架构中的自注意力机制和前馈网络的协同作用。计算表达力作为衡量模型能力的关键指标,涉及函数逼近、组合泛化和上下文理解等多个维度。随着模型规模的扩大,涌现能力现象揭示了参数规模与推理能力之间的非线性关系。在实际应用中,通过提示工程和微调策略可以有效激活和优化模型的推理表现。当前研究正探索模块化架构和世界模型整合等方向,以突破长程推理和因果关系建模等前沿挑战。本文深入探讨了语言模型推理泛化的技术原理与实践方法,为理解计算表达力 阅读详情

相关推荐

ACPWorkbench_for_BP10

ADC支持9种采样率:8000Hz、11025Hz、12000Hz、16000Hz、22050Hz、24000Hz、32000Hz、44100Hz 以及 48000Hz。选择5种MCLK源时, 模块内部的MCLK源无效。I2S 采样率支持:8K,11.025K,12K,16K, 22.05K, 24K, 32K, 44.1K, 48K, 88.2K, 96K, 176.4K 和 192K。DAC采样率支持:8K,11.025K,12K,16K,22.05K, 24K, 32K, 44.1K和48K。

dddds222_的博客 4551

序列化系列(1)java序列化机制

这篇文章开始讲java对象的序列化,这是因为近期自己的项目当中,大量使用了序列化技术,这里面有java提供的序列化技术,也有一些序列化框架;所以,下定决心把java的序列化技术整理一下,以供参考。这是序列化系列的第一篇文章,所以主要是描述java提供的序列化技术。后续系列再分别讲使用框架实现序列化。 按照惯例,先给出这篇文章的大致脉络 首先,描述了序列化技术的使用场景和序列化的几种方案。 接着,...

冯冬冬的博客 403

超详细!DeepSeek本地搭建部署、搭建知识库及智能体教程

通过以上详细的步骤,我们完成了DeepSeek的本地搭建部署、知识库的搭建以及智能体的创建。这一过程不仅让我们深入了解了大模型的应用,还为我们开发个性化的智能应用奠定了基础。在实际应用中,可以根据具体需求进一步优化模型、知识库和智能体的性能和功能。希望本文能帮助大家快速上手DeepSeek相关技术,开启属于自己的人工智能创新之旅。

Ljugg的博客 8183

系列化和反序列化

系列化是将模型转字典 反序列化是将字典转模型 因为后端的逻辑就是这两种。 DRF为什么能够快速做REST开发:因为他将序列化反序列化进行了封装 我们只用将序列化反序列化的数据传给他就可以了 转载于:https://www.cnblogs.com/Mpingxie/p/9310113.html...

weixin_34384681的博客 413

三相直流无刷电机(带HALL传感器)BLDC控制一

本案例选择TIM0的CH0/CH1/CH2三个通道接入三路原始hall输出信号。三路TIM_CHx(48)通过配置存入到NIP寄存器(new input pattern,3 bits)内。未完待续。

m0_69929716的博客 405

网络摄像机Sensor低光性能实测:海思平台搭配索尼IMX335 vs 豪威OV4689

本文通过海思Hi3516DV300平台,对索尼IMX335与豪威OV4689两款网络摄像机Sensor进行低光性能实测。在信噪比、动态范围及实景成像对比中,IMX335凭借更优的噪声控制与稳定性表现领先,尤其在极低光环境下优势明显。文章为安防监控项目的Sensor选型与海思平台优化提供了数据参考与实战建议。

silver的专栏 829

java系列化是什么_什么是JAVA系列化?

大多数商业项目使用数据库或内存映射文件或仅使用普通文件来满足持久性要求。 只有少数项目依赖Java中的序列化过程。 无论如何,本文都不是Java序列化教程,也不是如何在Java中序列化对象,而是采访有关序列化机制和序列化API的问题。对于不熟悉java序列化的人,java序列化是用于通过将对象的状态存储在扩展名为.ser的文件中来序列化java中的对象的过程,并且可以通过此文件状态还原和重建Jav...

weixin_29016315的博客 276

堆内存管理核心逻辑 超详细复习笔记

本文详细解析了堆内存管理的核心逻辑,包括初始化、分配和释放三个关键环节。系统通过全局堆管理结构体和链表机制实现动态内存管理:初始化时标记整块内存为空闲;分配时遍历链表查找合适空闲块并进行分割;释放时定位内存块头并重新标记为空闲,支持相邻块合并以减少碎片。文章对比了链表式管理和线性分配的优缺点,指出链表式更灵活但实现复杂,线性分配简单但无法释放。最后总结了常见错误(如指针回推错误、碎片问题)和扩展知识(不同内存管理算法)。这套机制是理解嵌入式系统和RTOS内存管理的基础。

2502_92009732的博客 1198

【软件设计】六大设计原则讲解

1. 单一职责原则 -Single Responsibility Principle SRP,Single Responsibility Principle: There should never be more than one reason for a class to change. 应该有且仅有一个原因引起类的变更。(如果类需要变更,那么只可能仅由某一个原因引起)

将来的你 1万+

微观交通流仿真软件:SUMO (Simulation of Urban MObility)_(8).仿真场景创建与编辑

总结文件()包含了仿真过程中的总体统计信息,如车辆生成数、平均速度等。加载总结文件使用Python的提取关键信息通过以上步骤,可以使用SUMO及其相关工具和库创建和编辑交通仿真场景。无论是手动创建、使用工具转换现有数据,还是通过Python脚本自动生成,SUMO都提供了丰富的功能来满足不同需求。此外,Traci库允许在仿真过程中动态调整交通场景,从而实现更精细的控制和优化。最后,通过对输出文件的分析,可以评估仿真结果并进行进一步的改进。

kkchenjj的博客 1268

手把手教你学simulink(41.4)--逆变器电场景示例:基于Simulink的主从控制的多逆变器协同控制(Multi-Inverter Coordinated Control)

需求分析在现代电力系统中,分布式发电和储能系统的广泛应用使得多个逆变器并联运行成为常见的应用场景。为了确保多个逆变器之间的协同工作,实现系统的稳定性和高效性,通常采用主从控制(Master-Slave Control)策略。主从控制通过一个主控制器(Master)来协调多个从控制器(Slave),确保所有逆变器的输出电压、频率和功率分配符合预期目标。本项目将基于Simulink平台,开发一个多逆变器协同控制系统,采用主从控制策略,实现对多个逆变器的精确控制和优化。

MHD0815的博客 305

C#中对象的系列化与反系列化

C#中对象的系列化与反系列化序列化也称为串行化,它能将对象备份到磁盘文件或转换为标准Xml文件通过网络实现跨平台传输。通过系列化的结果,反过来得到相应对象的过程,称为反系列化。在C#里,可以使用.Net FrameWork提供的类方面的进行系列化和反系列化。本文将介绍两种方法。在介绍具体实现之前,先给出要被系列化/反系列化的示例类型:<br />[System.Serializable()]<br />public class TypeA  //要被系列化的类型1<br />{<br />   privat

hawking3000的专栏 2579

RK3568平台开发系列讲解(外设篇)CAN的使用

📢 本篇章带大家快速了解CAN的使用。

内核笔记 2352

Redis系列化方式有哪些?哪个系列化性能最好?

Redis系列化方式有JDK系列化、JSON系列化、XML系列化等多种。我专门测试过,在我的笔记本电脑上保存5万条User对象到Redis,JDK系列化方式平均要15秒,JSON系列化方式只要13秒多点,JSON效率高,而且它点的内存空间少。 转载于:https://www.cnblogs.com/huigee/p/9835681.html...

weixin_30597269的博客 377

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

redis系列化JSON存取

系列化成JSON存取redis数据。

chenzumao1的博客 1128

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

AI绘图实战:把地景档案模型提示词写成高质量系列化博客

这篇文章分享了如何通过AI绘图工具生成高质量的地景档案模型提示词,并转化为系列化博客内容。文章首先介绍了地景档案模型的独特魅力,即融合二维地图、三维立体模型和专业说明系统,呈现博物馆展陈风格。随后展示了原始提示词的结构,强调其系统化设计,包括主题设定、画面结构、细节要求、说明系统等要素。通过实践案例,验证了提示词的有效性,成功生成了兼具档案感和专业性的视觉作品。文章重点分析了提示词的成功之处在于明确定义了视觉系统,而非单一画面描述,适合系列化内容创作。

分享 Windows 系统部署、镜像封装、终端管理、故障排查与运维自动化实践,涵盖 Sysinternals、PowerShell 和 AI 工具应用。以真实案例梳理排查思路与解决步骤,让运维经验清晰、可复用。 1万+

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Java Serializable系列化详解

Serializable系列化详解 https://baijiahao.baidu.com/s?id=1633305649182361563&wfr=spider&for=pc

weixin_44371237的博客 291

FastJson系列化使用toJSONString时null值问题

方法将一个String转换成一个对象时,如果对象obj的属性字段有值为null时,该字段会被系列化成"";在使用时,也可以根据自己的需求来添加其他枚举类型,直接在后边添加即可。其实fastjson的toJSONString()。从源码分析我们可以知道,JSON默认是换成null的。我们可以很明显的看到系列化后null已经修改成""最后,希望可以帮助到有需要的码友。在使用fastjson调用。fastJson包版本。

evanYang的博客 866

邹建锋:手机游戏系列化运营模式探讨

邹建锋:手机游戏系列化运营模式探讨     国内移动市场在爆发式的增长,移动终端在大规模的普及,用户越来越习惯在手机上玩游戏,那么什么样的游戏才能赚钱?该文档重点探讨了手机游戏系列化运营模式。 对其内容详细阅读

拟声的主扬在江湖 959

软件开发系列化:系列化是从产品使用要求和发展规律出发

系列化是从产品使用要求和发展规律出发,将同一功能产品的主要参数或者规格按一定的数系或要求作合理规划,并对其型式和结构进行简化和统一,使产品有序发展并形成一定的序列,以满足用户广泛要求的一种标准化形式。软件系列化是把一类软件产品的主要功能、性能特性和配置的规模,按照应用模式、应用的平台环境和用户进行分类、分级形成合理的序列,以较少的品种或规格满足最大使用范围的标准化方式。

m0_72956104的博客 220

Serializable系列化的目的

系列化的目是对对象的拷贝,而不是拿同一个对象。 复制对象,而非指向对象内存地址 来源: 鲁班大叔

科技向善 296

SOLIDWORKS如何实现系列化参数建模

SOLIDWORKS的最强优势功能在于标准化、系列化、模块化,针对自动化制造型企业不同系列的产品,产品规格虽然多种多样,但是具体的结构非常类似,满足上述条件,有必要学习系列化参数建模,之后利用参数驱动软件,实现产品选配,满足不同的客户需求。 首先,并不是所有的产品类型都适合本文描述的情况,因此针对本文所表达的情况,对企业产品进行分类。根据经验,有必要选择结构相似的产品,也就是说,产品建模的过程是完全相同的,零部件之间的组装也是一种标准化的方式。这种情况下比较有代表性的是家具行业(桌子、椅子、沙发、床.

jcyouhun的博客 2951

对象转json系列化问题

对象转json系列化问题 在server返回对应传给SDK时候遇到一个问题: server端做了映射: @XmlElementWrapper(name = "parent_vids") @XmlElements(@XmlElement(name = "parent_vid", type = Long.class)) private List<Long> parentVids; ...

miniccie的博客 375

聊一聊Java中的系列化

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34067102的博客 305

Redis系列化配置

package com.anhua.springbootredis.redisconfige; import com.fasterxml.jackson.annotation.JsonAutoDetect; import com.fasterxml.jackson.annotation.PropertyAccessor; import com.fasterxml.jackson.databind.ObjectMapper; import org.springframework.context.annota

m0_47485528的博客 173
上一篇: ubuntu搭建android开发环境
下一篇: ArrayList复制问题
SeekSage
SeekSage 领域专家: 操作系统技术领域 领域专家: 操作系统技术领域
博客等级 码龄13年 364粉丝 286原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值