组织部--Split函数学习与运用
来源:互联网 发布:nba2kol奥尼尔隐藏数据 编辑:程序博客网 时间:2024/04/25 20:30
在组织部项目做批量删除的时候,感受到了Splite这个“小”函数的强大,在此做个总结。
Split()函数是干什么的?
官方解释: Split()方法用于把一个字符串分割成下标从“0”开始的字符串数组;通俗理解:Split()函数就是一把剪刀,将长长的字符串剪碎,组成数组。
Split()函数用在哪里?
在.net和java语言中都包含该方法,在javascript中也非常常用,下面以在C#和javascript中的运用做介绍。
C#用法:
expression.Split( [delimiter[, count[,compare]]])
在”[]”中括号中的参数是可选参数,其中:
Expression:包含子字符串和分隔符的字符串表达式。如果expression是一个长度为零的字符串(""),Split则 返回一个空数组,即没有元素和数据的数组。
Delimiter:用于标识子字符串边界的字符串字符,相当于用该参数来做分界,最终不包含在数组当中。
Count:要返回的子字符串数,–1表示返回所有的子字符串。
Compare:数字值,表示判别子字符串时使用的比较方式(不常用)
示例:
1、
string s=mycnameciscvincent;string[] sArray=s.Split('c') ;foreach(string i in sArray)Console.WriteLine(i.ToString());
输出下面的结果:
my
name
is
Vincent
string str="aaajbbbscccjdddseee"; string[] sArray=str.Split(new char[2] {'j','s'}); foreach(string i in sArray) Response.Write(i.ToString() + "<br>");
输出结果:
aaa
bbb
ccc
ddd
eee
类似分隔方法以及Split()的重载参考:http://www.cnblogs.com/yugen/archive/2010/08/18/1802781.html
在javascript中:
<script type="text/javascript">var str="How are you doing today?"document.write(str.split(" ") + "<br />")document.write(str.split("") + "<br />")document.write(str.split(" ",3))</script>
使用方法竟然雷同。
思考:这个方法可以在那些情况下使用?
目前接触的Split()方法用在对复选框的处理上很到位,代替了for循环遍历,从而提高了系统的性能,具体用法展示如下:
(1)在js中获取选中的行信息:var selectRows = $("#dg").datagrid("getSelections"); //定义字符变量,用于将选中行的ID保存成字符串,并以特定符号分隔开 var strIds = ""; for (var i = 0; i < selectRows.length; i++) { strIds += selectRows[i].ID + ","; } //循环切割strIds = strIds.substr(0, strIds.length - 1); //将该字符串传给Controller进一步操作$.post('/CityBasicInfo/DeleteCityBasicInfo?CityId=' + strIds, function (jsonObj)
(2)在Controller中的处理:
var tempCityID = Request["CityId"]; //通过切割方式获得id string[] City = tempCityID.Split(','); bool result = false;
//循环ID实现对DataGrid中多条数据的操作,优化方案参考下文 for (int i = 0; i < City.Length; i++) { CityBasicInfoViewModel cityBasic = new CityBasicInfoViewModel() { CityID = new Guid(City[i]), IsEnable = 0, Operator = "zzh" }; result = ICityBasic.DeleteCityBasicInfo(cityBasic); }分析:明确使用","来进行分割,在JS方法中对于selectRow的拼接已经埋下了伏笔,而strids.substr(0,strlds.length-1)则将最后一个","巧妙的去掉,在Controller中通过split(‘,’)将每行的ID获取到,最终一个循环解决问题。
优化:项目进行过程中,发现这样子会执行多次对于Service端的调用,不如直接将其以数组形式传到Service中,在B层进行Split操作,从而更加提高代码性能。
一个小小的函数,通过在项目中遇见到查资料到最后的消化,这样子的学习过程很有乐趣也很深刻,在此分享给大家。
- 组织部--Split函数学习与运用
- 黑马程序员--Split函数的运用
- split运用
- 【R语言学习】split函数
- HTMLParser 学习与运用
- Java学习:trim()函数、split()函数
- split函数与strtok函数的实现
- C++函数运用学习篇
- PHP函数介绍与运用
- [学习]实现split功能的函数
- Split函数,正则表达式与空字符串
- split(),preg_split()与explode()函数简介
- Python之strip与split函数
- python中split()函数与strip()
- OpenCV 图像分离颜色通道 split函数和mege函数的运用
- Zookeeper 的学习与运用
- Zookeeper 的学习与运用
- Zookeeper 的学习与运用
- Activiti系列(一)——最简单的Activiti程序
- 个人阅读书籍记录
- 【杭电-oj】-2393-Higher Math(判断是否为三角形)
- C语言产生随机数
- 326. Power of Three
- 组织部--Split函数学习与运用
- 知识点总结
- UVA 10384(p219)----The Wall Pusher
- hadoop生态系统学习之路(二)如何编写MR以及运行测试
- CALayer 类的介绍(创建+属性)
- ThinkPHP框架中遇到的若干问题手札2
- 如何降低Vue.js项目中Webpack打包文件的大小?
- UTF-8 GB18030 GB2312问题
- 第五周上机实践项目——项目3-时间类-(2)