扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:builder.com.cn 来源:来源网站 2007年11月25日
关键字: string
问题:如果让你写一个字符串操作类,你会选择什么方案?
分析:这个题涉及的东西比较多。可供选择的字符串类型有String,StringBuffer,
StringBuilder三种类型,之后考察你对这三种类型的认识。
我的方案:
1. 先回顾一下C语言:
char c[]={‘t’,’u’,’f’,’e’,’i’}; char c[]={“tufei”}; char c[]=”tufei”; |
用一维数组存放字符串,因此也可以把一维数组看作其它语言的“字符串变量。
2.回到JAVA:
String类型就是上面所讲到的“其它语言中的‘字符串变量’“,我理解String变量就是对一个字符数组的引用(这样讲并不严格)。
3.String还是StringBuffer或StringBuilder?
首先分析StringBuffer ,StringBuilder:二者对字符串的操作方法都是相同的,只是前者同步,因此较慢,首选后者。
4.String与StringBuilder(和StringBuffer可以认为没区别):
a. String类型的变量不可以修改,StringBuilder型可以修改,这个学JAVA的人基本都知道。String
类包括的方法都是与“查”相关的,没有修改该变量的方法,由此可以知道String变量在创建后就是一个常量。字符串串联符号“+“相当于StringBuilder(StringBuffer)的append方法,只是将一个字符串追加到原字符串后面。
String a=”abc”; a=a+” 问题:JVM在执行上面两句代码时,过程是什么样的? |
b. StringBuilder中的方法基本上“增删查改”齐全。
延伸:String类的concat()及它的重载方法的相关应用。
总之,这些类里的方法都认真了解一下最好。
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1901651
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者