你会用string.lastIndexOf()吗?

本文探讨了在处理URL字符串时,如何通过优化搜索算法提高性能,并详细介绍了设计URL相关API(如queryToJson)的方法,包括从后查找字符串的优势、性能优化策略以及API设计考虑因素。同时强调了在程序设计中维护安全性的必要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

很多的人可能会不屑这个问题,请听我慢慢说道。

 

需求设计是这样的,我现在需要编写一个url相关的api比如queryToJson这样的

 

常见举例 “http://www.****?name=zhangyaochun&age=24”,这样的常见的url地址中提取?后面的name=zhangyaochun&age=24这样的转换成{name:zhangyaochun,age:24};

 

这样的api需求在很多的项目里面会用,比如我以前做的测试平台,我需要根据url里面的platId去请求后台返回后台的返回相关平台和用户的数据。(这边我还想说明一下,一般我们程序设计的时候,不会简单地去从前台传一些用户的信息如id去告诉后台我是什么权限,后台的安全判断还是很必要的。很怀念以前SDC参与开发的权限1.6---颗粒化权限到功能节点的绑定,赞)

 

直接入正题,那现在很明显我要去查找这个url字符串。有的人很直接地就indexOf了,个人建议相对于?前面的长域名我觉得我会选择从后面去查找这个字符串,当然我这边只是说一种普通情况。或者这么说吧,你在想到indexOf这个api的时候你有没有想想我到底是从前面查找快还是后面查找快呢????

 

性能的优化不是一个api或者一个算法,在这个api或者算法的内部是不是还能优化

 

请记住一句------再优化也不如原生api的实现快,比如parseJson这样的api设计

 

再思考。。。。。。。。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值