java11-6 String类的其它功能
String类的其他功能:
替换功能:
String replace(char old,char new)
String replace(String old,String new)
去除字符串两空格
String trim()
按字典顺序比较两个字符串
int compareTo(String str) 区分大小写
int compareToIgnoreCase(String str) 不区分大小写
public class StringTest3 { public static void main(String[] args) {
String s = "HelloWorld"; // 字符替代:String replace(char old,char new)
String s1 = s.replace('o','k');
System.out.println(s1);//HellkWkrld // 字符串替代:String replace(String old,String new)
String s2 = s.replace("ll", "kk");
System.out.println(s2);//HekkoWorld // 去除字符串两空格
String s4 = " hello world ";
String s5 = s4.trim();
System.out.println("s4:" + s4 + "---");//左右的空格还保留
System.out.println("s5:" + s5 + "---");//左右的空格去除了 //按字典顺序(ASCII码表)比较两个字符串:
// int compareTo(String str)
String a1 = "cat";
String a2 = "dog";
String a3 = "Cat";
String a4 = "door";
String a5 = "cat";
String a6 = "c"; int i1 = a1.compareTo(a2);
System.out.println(i1);
//-1 c在b的前面一位,ASCII码表,a1的c减去a2的b,等于-1 System.out.println(a1.compareTo(a3));//32
//a1的c在ASCII的数值减去a2的C在ASCII的数值。得到32 System.out.println(a2.compareTo(a4));//-8
//a2的前2个字母do和a4前2个一样,a2第三个的g减去a4第三个的o,得到-8 System.out.println(a1.compareTo(a5));//0
//a1和a5的数组元素完全一样 System.out.println(a1.compareTo(a6));//2
//Ctrl+左键点击comperTo看源码
} } compareTo的源码,以及“System.out.println(a1.compareTo(a6));//2”的分析 private final char value[]; 字符串会自动转换为一个字符数组。 public int compareTo(String anotherString) {
// this - a1 - "cat"
// anotherString - a2 - "c" int len1 = value.length;
//this.value.length = a1.toCharArray().length == 3 int len2 = anotherString.value.length;
//anotherString.value.length = a2.toCharArray().length == 1 int lim = Math.min(len1, len2);
// lim = Math.min = 3-1 = 2; lim = 2 char v1[] = value;
// char v1[] = {'c','a','t'}; char v2[] = anotherString.value;
// char v2[] = {'c'}; int k = 0;
while (k < lim) {
char c1 = v1[k]; //c1 = 'c','a','t'
char c2 = v2[k]; //c2 = 'c'
if (c1 != c2) {
return c1 - c2;
}
k++; //当k=1时,k !< lim ,lim = 1; 所以跳出循环
}
return len1 - len2; //跳出循环后,到这里,比较两个数组的长度 3-1 = 2
} String a1 = "cat";
String a6 = "c";
System.out.println(a1.compareTo(a6));//
java11-6 String类的其它功能的更多相关文章
- java11-3 String类的获取功能
String类的获取功能 int length():获取字符串的长度. char charAt(int index):获取指定索引位置的字符 int indexOf(int ch):返回指定字符在此字 ...
- Java基础知识强化34:String类之String类的转换功能
1. String类的转换功能 String[] split(String regex)//将字符串变成字符串数组(字符串切割) byte[] getBytes()//将字符串变成字节数组 char[ ...
- Java基础知识强化33:String类之String类的获取功能
1. String类的获取功能 int length() // 获取字符串中字符的个数(长度) char charAt(int index)//根据位置获取字符 int indexOf(int ch) ...
- Java基础知识强化32:String类之String类的判断功能
1. String类的判断功能: boolean equals (Object obj ) boolean equalsIgnoreCase (String str ) boolean contain ...
- string类的常用功能演示
这个程序可用随着我对string的用法的增多而有调整. /* 功能说明: string类的常用功能演示. 实现方式: 主要是演示string的常用函数的用法和它与字符数组的区别与联系 限制条件或者存在 ...
- 字符串类String类的判断功能
StringDemo.java /* * Object:是类层级结构中的根类,所有的类都直接或间接的继承自该类. * 如果一个方法的形式参数是Object,那么这里我们就可以传递它的任意的子类对象. ...
- String类的转换功能
/* * String类的转换功能 * char[] toCharArray():把字符串转换为字符数组 * String toLowerCase():把字符串转换为小写字符串 * String to ...
- String类的获取功能
/* * String类的获取功能: * int length():获取字符串的长度,其实也就是字符个数 * char charAt(int index):获取指定索引处的字符 * int index ...
- String类的判断功能
/* * Object:是类层级结构中的根类,所有的类都直接或间接的继承自该类. * 如果一个方法的形式参数是Object,那么这里我们就可以传递它的任意的子类对象. * * String类的判断功能 ...
随机推荐
- 【GOF23设计模式】解释器模式 & 访问者模式
来源:http://www.bjsxt.com/ 一.[GOF23设计模式]_解释器模式.访问者模式.数学表达式动态解析库式 1.解释器模式Interpreter 2.访问者模式Visitor
- TCP中close和shutdown之间的区别
该图片截取自<<IP高效编程-改善网络编程的44个技巧>>,第17个技巧. 如果想验证可以写个简单的网络程序,分别用close和shutdown来断开连接,然后用tcpdum ...
- 使用自定义字体 @font-face 小试
第一次了解到@font-face是小伙伴给我展示的功能 感觉奇妙的不得了 @font-face 是CSS3中的一个模块 使用它你就可以将你自定义的web字体 去实现一些奇妙的想法 首先先介绍 ...
- 关于iChartjs在移动端提示框tip显示不正常的解决方法
最近项目需要使用手机图表,但是找了很久都没找到专门为移动端开发的图表,只能找一些能兼容移动端的图表控件,今天就讲讲关于iChartjs这个图形库的一点问题. 问题 iChartjs的提示框tip的显示 ...
- ABAP中正则表达式的简单使用方法 (转老白BLOG)
在一个论坛上面看到有人在问正则表达式的问题,特举例简单说明一下.另外,REPLACE也支持REGEX关键字.最后:只能是ECC6或者更高版本才可以(ABAP supports POSIX regula ...
- 用QQ号登陆Sharepoint,研究到最后关头卡住了。大家发力呀
此项目未完成,登陆不了SharePoint,大家研究吧,折腾吧..... 已经完成的部分有:已经可以获取到腾讯用户信息,如: Get Access Token===============access ...
- App开发流程之Xcode配置和本地化
补充一点遗漏的Xcode配置. 1.偏好设置.Xcode的菜单栏Xcode -> Preference Fonts & Colors可以自定义编码区和控制台的背景.字体. Text Ed ...
- 【读书笔记】iOS-NSDictionary与NSArray的比较
有时候为什么不用数组存储然后在数组里查询数值呢?字典(也称为散列表或关联数组)使用的是键查询的优化存储方式.它可以立即找出要查询的数据,而不需要遍历整个数组进行查找.对于频繁的查询和大型的数据集来说, ...
- 朝花夕拾-android 从手机选择图片或拍照设置头像
Demo源码位置:http://git.oschina.net/zj2012zy/Android-Demo/tree/master/AndroidDemo/headset 一般需要用户信息的好多的也需 ...
- iOS 公司开发者账号申请
苹果开发者账号分三种. 个人账号:个人申请用于开发苹果app所使用的账号,仅限于个人使用,申请比较容易,$99. 公司账号:以公司的名义申请的开发者账号,用于公司内部的开发者共用,$99. 企业账号: ...