中国建设工程招标网站,化妆培训网站模板,免费代理浏览网页,centos 卸载wordpress今天在写代码的时候#xff0c;需要对String进行一些操作#xff0c;例如变小写#xff0c;去除所有空格
于是熟练的使用String的replaceAll#xff0c;却发现没这个方法。
后面才发现Kotlin使用的是自己的String#xff0c;有自己的方法#xff0c;用String的replace(…今天在写代码的时候需要对String进行一些操作例如变小写去除所有空格
于是熟练的使用String的replaceAll却发现没这个方法。
后面才发现Kotlin使用的是自己的String有自己的方法用String的replace( ,)方法也可以替换里面所有的空格。
既然用到了就寻思总结一下这儿主要Kotlin的String方法和Java的其实大差不差。
1.去除所有空格 c h i n a .replace( , ) //输出china去除所有空格
2.去除开头结尾的空格 c h i n a .trim()//输出c h i n a;
3.内容替换
println(acdb and fff.replace([abcd].toRegex(), y) )//yyyy yny fff
println(acdb and aaa.replace(Regex([abcd]), y) )//yyyy yny yyy
4.移除操作
println(123456.removeRange(0..2))//输出456println(123456.removeRange(0,2))//3456 参数 开始位置结束位置5.比较 println(123456.compareTo(123a))//输出-45println(123A456.compareTo(123A,true))//输出-13 忽略大小写操作 compareTo方法是字符串与对象进行比较。按字典顺序比较两个字符串。返回值是整型它是比较对应字符的大小ASCLL码顺序如果第一个字符和参数的第一个字符不等结束比较返回他们之间的长度差值如果第一个字符和参数的第一个字符相等则以第二个字符和参数的第二个字符做比较以此类推直至比较的字符或被比较的字符有一方结束。 如果参数字符串等于此字符串则返回值0 如果此字符串小于字符串参数则返回一个小于0的值 如果此字符串大于字符串参数则返回一个大于0的值 6.相等equls
val a 123
val b 123println(123.equals(a)) //trueprintln(b.equals(a)) //true 1.判断条件 若当前对象和比较的对象是同一个对象即return true。也就是Object中的equals方法。 若当前传入的对象是String类型则比较两个字符串的长度即value.length的长度。 若长度不相同则return false 若长度相同则按照数组value中的每一位进行比较不同则返回false。若每一位都相同则返回true。 若当前传入的对象不是String类型则直接返回false 2.Object.equals与String.equals的区别: Object.equals()比较内存地址内存地址相同说明是同一个对象 String.equals: 比较内容即可不管内存地址。 总结 Object.equals相等说明引用是同一个对象那么String.equals一定相等 String.equals相等只是说明字面值相等不一定是同一个对象所以Object.equals不一定相等。 3.源码 Object作为String的父类因为String重写了equals方法所以在String中内容相同也返回true。object中是直接判断对象返回true/falsestring中先判断是否是同一对象不是则又去判断长度再去一一比对值源码很简单可以去看一下。 先总结几个常用的很基础后面用到其他的看了源码再来总结