练题006

TI红外测温传感器TMP006 最近在做红外测温的项目,试了几个不同公司的红外产品,最早拿到手的是TI的这款芯片式的红外温度传感器TMP006,TI关于这款芯片的介绍是世界上首款单片数字IR MEMS温度传感器,首次为便携式消费电子产品实现非接触温度测量功能。TI这款芯片最大的优势在于它的体积,很难想象能够在那么小的一款芯片上能够集成各种器件,包括片上MEMS热电堆传感器、信号调节功能、16位模数转换器(ADC)、局部温度传感器 阅读详情

不想复杂,那就是直接遍历进行修改。

需要考虑的是使用字符数组存储还是通过StringBuilder可变字符串来存储新的字符串。

使用字符数组的话,则需要考虑字符数组的初始化长度,空格改为%20由一变三,最坏的情况就是全部需要变,那么就初始化长度为原字符串的3倍长度,这很明显会大量耗损空间内存。

代码:

class Solution {
    public String replaceSpace(String s) {
        char[] c = new char[s.length() * 3];
        int index = 0;
        for (int i = 0; i < s.length(); i++){
            if (s.charAt(i) == ' '){
                c[index++] = '%';
                c[index++] = '2';
                c[index++] = '0';
            }else c[index++] = s.charAt(i);
        }
        String str = String.valueOf(c,0,index);
        // String newStr = str.substring(0,index);
        return str;
    }
}

其中用到了String的一些常用方法:substring方法(没想到全是小写字母),静态方法String.valueOf可以直接进行传参数组的切分

上面说了这种预估大小的初始化会很浪费内存,那么我们就可以使用StringBuilder等可变的来使用

代码:

class Solution {
    public String replaceSpace(String s) {
        StringBuilder res = new StringBuilder();
        for(Character c : s.toCharArray())
        {
            if(c == ' ') res.append("%20");
            else res.append(c);
        }
        return res.toString();
    }
}

StringBuffer与StringBuilder都提供了一系列插入、追加、改变字符串里的字符序列的方法,它们的用法基本相同,只是StringBuilder是线程不安全的,StringBuffer是线程安全的。如果只是在单线程中使用字符串缓冲区,则StringBuilder的效率会高些,但是当多线程访问时,最好使用StringBuffer。

综上,在执行效率方面,StringBuilder最高,StringBuffer次之,String最低,对于这种情况,一般而言,如果要操作的数量比较小,应优先使用String类;如果是在单线程下操作大量数据,应优先使用StringBuilder类;如果是在多线程下操作大量数据,应优先使用StringBuilder类。

ESP32设备驱动-TMP006 红外热电堆传感器驱动 Texas Instruments 的 TMP006 是一系列温度传感器中的第一款,无需接触物体即可测量物体的温度。 它使用非常灵敏的热电堆来测量从物体表面发射的红外能量。 阅读详情

相关推荐

【论文复现】HiDDeN:Hiding Data With Deep Networks

(标签)是 float 类型,但代码中传入的是 long 类型(整数标签)。函数参数解析方式变化,导致无法正确保存生成的图像结果。这是因为新版torchvision的。使用预训练模型进行隐写和提取测试。HiDDeN支持多种噪声层组合。打印变量的类型,分别是。

qq_69146676的博客 971

C练题笔记之:牛客-HJ006.质数因子

题目: 描述 功能:输入一个正整数,按照从小到大的顺序输出它的所有质因子(重复的也要列举)(如180的质因子为22335) 最后一个数后面也要有空格 输入描述: 输入一个long型整数 输出描述: 按照从小到大的顺序输出它的所有质数的因子,以空格隔开。最后一个数后面也要有空格。 示例1 输入: 180 复制输出: 2 2 3 3 5 结果: 解题思路: 代码: ...

lingjinyue的博客 161

华为星闪SLE实战:手把手教你用HarmonyOS开发智能家居控制应用(附完整代码)

本文详细介绍了如何利用华为星闪SLE技术,结合HarmonyOS开发智能家居控制应用。通过对比传统无线技术,阐述了星闪SLE在低时延、高可靠性和高并发方面的优势,并提供了从环境搭建、设备发现、连接管理到核心控制代码的完整实战教程,帮助开发者快速上手这一无线短距通信技术。

bert9linguist的博客 507

【MT32F006】MT32F006之LED

本文介绍如何使用MT32F006控制led

feilusia的博客 1304

Keil5安装多版本共存方案:实用技巧分享

分享Keil5安装过程中实现多版本共存的实用方法,解决开发环境冲突问题。通过合理配置路径与版本管理,让keil5安装更高效稳定,提升嵌入式开发体验。

weixin_42514750的博客 1533

STM32 USB AUDIO实战指南——从零构建音频设备

本文详细介绍了如何使用STM32F407构建USB音频设备,从硬件准备到软件配置,再到音频播放和录制功能的实现。通过STM32CubeMX配置和实战代码示例,帮助开发者快速掌握USB Audio Class规范,实现低延迟、高质量的音频传输,适用于语音交互、音乐播放等多种场景。

weixin_42549037的博客 484

【MT32F006】MT32F006之按键

本文介绍如何使用MT32F006的按键

feilusia的博客 966

金蝶ERP元数据解析:字段属性与表结构映射实战

本文深入解析金蝶ERP元数据的核心价值与应用实践,详细介绍了字段属性与表结构映射的关键技术。通过缓存获取与工具类直连两种方案对比,结合实际案例展示元数据在数据库校验、动态表单生成等场景的应用,帮助开发者高效解决二次开发中的常见问题。

weixin_33738555的博客 434

量价因子之alpha006

alpha191,量价因子,量化分析,阿尔法

weixin_40456349的博客 861

GEE:哨兵时间序列遥感数据和动态阈值方法计算物候时期EOS/SOS(2)

本文将分享和解释论文《Improved Estimates of Arctic Land Surface Phenology Using Sentinel-2 Time Series》中使用到的基于阈值估算北极地区的植被物候,特别是北极地区的植被季节开始和结束的日期(SoS和EoS)的方法和代码。该方法使用的是使用哨兵2数据,并实现了两种阈值方法( 无平滑的阈值方法、平滑后的阈值方法)。

养乐多的博客 2971

ZYNQ 网络通信的四种实现方案

一,ZYNQ MIO以RGMII 接口连接外部PHY芯片实现LWIP网络通信。 二,ZYNQ PS 的 ENET0/ENET1 通过 EMIO 的方式扩展至 PL,在 PL 中通过 RGMII 接口连接扩展子卡实现 LWIP 网络通信。 在PL中搭建了1个AXI 1G/2.5G Ethernet Subsystem以及1个AXI Direct Memory Access IP 核。这两个 IP核均通过AXI 总线经S_AXI_HP0 口与PS 连接,PS 通过AXI 总线对其进行配置和控..

wangjie36的博客 1万+

AGC006_D Median Pyramid Hard

图片搬运来源:官方 前言 如果没写过此比赛的B题,可先去解决B题,对此题会有一定帮助。 题目:https://agc006.contest.atcoder.jp/tasks/agc006_b blog:https://www.cnblogs.com/Alseo_Roplyer/p/10189171.html 题面翻译 首先和此比赛B题一样,给你一个构造方法相同的金字塔,给你第n层填的数,...

digangmeng2546的博客 209

当AI写小说——一个被严重低估的工程化战场

摘要 AI小说创作远非简单的prompt生成,而是一项需要系统化工程管理的复杂任务。本文通过真实案例分析,揭示了当前AI写小说存在的五大核心难题:设定一致性难以维持、文风控制缺乏个性、爽感节奏难以把握、长篇记忆能力有限以及平台规则适配困难。研究显示,90%的失败案例源于错误的创作方法,主要表现为对话框式随机生成和模板式同质化创作。要实现高质量的AI小说创作,必须建立包括设定治理、记忆管理、文风校准等在内的全链路工程化体系,而非依赖单一prompt指令。只有采用系统化的人机协同方法,才能突破当前AI创作的质量

sellyogurt的博客 684

【MT32F006】MT32F006之IIC

本文介绍如何使用MT32F006的IIC

feilusia的博客 729

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

【MT32F006】MT32F006之Stimer延时

本文介绍如何使用MT32F006的Stimer延时1秒,是轮询方式,而不是死等占用mcu的方式

feilusia的博客 891

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

【AtCoder】AGC006

AGC006 A - Prefix and Suffix …… #include <bits/stdc++.h> #define fi first #define se second #define pii pair<int,int> #define mp make_pair #define pb push_back #define space putchar('...

weixin_30760895的博客 155

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

【MT32F006】MT32F006之通信协议

本文介绍如何使用MT32F006写一个通信协议

feilusia的博客 1005

Mit6.006学习记录

算法入门。

code a better life~ 11万+

【MT32F006】MT32F006之串口

本文介绍如何使用MT32F006的串口。

feilusia的博客 620

【MT32F006】MT32F006之HUSB363控制PD输出

本文介绍如何使用MT32F006连接HUSB363使用。香瓜实际应用于UPS项目(树莓派的充电宝),控制外接的树莓派充电

feilusia的博客 1083

【MT32F006】MT32F006之HT1628驱动LED

本文介绍如何使用MT32F006连接HT1628芯片驱动LED。

feilusia的博客 1386

【MT32F006】MT32F006之CS1237采集秤传感器

本文介绍如何使用MT32F006连接CS1237芯片采集秤传感器。

feilusia的博客 2403

表 T006 和 T006_OIB 不匹配

在sap 后台创建新的单位,报错表 T006 和 T006_OIB 不匹配

charles1321的专栏 784

【MT32F006】MT32F006之PWM控制RGB背光灯

本文介绍如何使用MT32F006使用PWM控制RGB灯显示白光,再加上扩散膜、导光板、反光纸、遮光纸,即可作为LCD的背光。

feilusia的博客 1230

【MT32F006】MT32F006之systick定时器延时

本文介绍如何使用MT32F006的定时器做us、ms级的延时。

feilusia的博客 331

SCP收容物006~010

被观察物种的技术水平必须至少每周检查一次,并且在██/███年,其技术水平大约等于15世纪地球的技术水平。对象自称为█████████████████,但没有找到此人的记录。遥控器是一个笨重的黑色盒子,类似老式的手持无线电发射器/接收器,带有原始的蓝/白阴极射线屏幕和一系列100多个未标记的按钮,以及一个频率调谐器。██████博士报告说,实验对象似乎并不介意这种受限的生活环境,并且没有试图逃跑,也没有表现出暴力或精神疾病的迹象,尽管他多次要求一台能上网的电脑。衣领最不正常的特征是它们对身体形态的影响。

Dream_MC_LZR的博客 5242
上一篇: SparkSQL实现对mysql数据库的对接
下一篇: 练题007
CHSN
博客等级 码龄7年 11粉丝 51原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值