作为一个java高级工程师(···),我非常负责得告诉大家,String就是java世界里边最牛逼
的类,没有之一,学好用好String,才能在java的世界里愉快的玩耍。
我们上一节课说了,String是引用类型,不属于基本类型。然而,String的作为最牛逼的类,
new的方式也是最酷的。
String str="shabi";
如果是一般的类这个构造方法应该是: String str=new String("shabi");
大家看一下这个句子 String str=new String("shabi"); 其实是产生了2个对象,一个是str,另
一个是"shabi".这个大家稍微记一下,面试官有时候会问的。
接下来的内容,大家肯定喜欢,因为全部都是用代码来讲述的,一点理论都没有,爽!!!
好了,大家请打开你的eclipse,一起嗨起来!!
String第一式:相等:equals
package class7; public class Test7 { public static void main(String[] args) { String a="da"; String b="shabi"; String c="da"; System.out.println(a.equals(b)); System.out.println(a.equals(c)); } }
String第二式:替代 replace/replaceAll
String b="shabi"; String a=b.replaceAll("bi", "x"); System.out.println(a);
String第三式: 长度 length
String b="shabi"; System.out.println(b.length());
String第四式: 按字符来拆分 split
String b="wo,bu,shi,sha,bi"; String[] strs=b.split(","); for(int i=0;i<strs.length;i++){ System.out.println(strs[i]); }
String第五式: 查找开始位置 indexOf
String b="wo,bu,shi,sha,bi"; int i=b.indexOf('s'); System.out.println(i);
String第六式: 第几个字符是啥 charAt
String b="wo,bu,shi,sha,bi"; char ch=b.charAt(6); System.out.println(ch);
String第七式: 比较大小 compareTo
String a="ni,shi,sha,bi"; String b="wo,bu,shi,sha,bi"; System.out.println(b.compareTo(a));
String第八式: 开始结束字符startsWith/endWith
String a="ni,shi,sha,bi"; System.out.println(a.startsWith("i")); System.out.println(a.endsWith("i"));
String第九式: 截取 substring
String a="ni,shi,sha,bi"; String b=a.substring(0, 5); String c=a.substring(5); System.out.println(b); System.out.println(c);
好啦,大家学了这九招之后,还有一个非常非常重要的大招要学,前面这些都是小case,这个概念也是非常重要的。我们Java程序员,肯定要写sql语句的,而且一般都不会很简单,我曾经看到过500行的sql,真的是又臭又长。 写sql一旦用上拼接,大家一定要记住,不要这样写:
String sql="select name,sex,age "; sql+="from people"; sql+="where name='"; sql+=inputName; sql+="'";这样写,会影响性能,对于男人来说,性能多重要。其实这性能影响并不是特别大,最重要的是:别人看到这样的代码,马上就会鄙视了,太他妈的垃圾了,什么玩意,回家带孩子去吧!
那么这个sql应该怎么写呢?对了,用stringBuilder!!
StringBuilder sql=new StringBuilder("select name,sex,age "); sql.append("from people"); sql.append("where name='"); sql.append(inputName); sql.append("'");
其实,sql的参数不应该这么拼凑的,不过我们今天主要讲string,所以这个问题就不告诉你们了,有兴趣的可以去查查看