String主要方法及用法
来源:互联网 发布:企业域名和价格 编辑:程序博客网 时间:2024/04/30 23:34
在Java中,String类是必不可少的,熟练掌握String类的方法之后,我们会发现原来很难处理的字符串,字符问题交给String类方法是如此的简单
好了,废话不多说,下面开始正式介绍String类的主要方法
1、字符串与字符数组的转换
public class TestDemo {public static void main(String[] args) {String str1 = "hello";char ch[] = str1.toCharArray();//toCharArray()将字符串转换为字符数组for(int i = 0; i < ch.length; i++){//循环输出字符数组的每一个字符System.out.print(ch[i]+"\t");}System.out.println("");String str2 = new String(ch); //将字符数组的所有成员转换为字符串String str3 = new String(ch,0,3);//将字符数组的前三个字符转换为字符串System.out.println(str2);System.out.println(str3);}}
结果显示如下:
2、取出字符串中指定位置的字符
代码比较简单(说明,本文的所有的字符串操作如不重新定义,则都是基于toCharArray()中定义的str1为准)
System.out.print(str1.charAt(3));//取出字符串中指定位置的字符结果显示如下:
3、字符串与byte数组的转换
实例如下:
byte[] b = str1.getBytes();//将字符串变为byte数组System.out.println(new String(b));//将byte数组的全部内容转换为字符串System.out.println(new String(b,1,3));//将byte数组的部分内容转换为字符串结果显示为:
4、取得一个字符串的长度
String类使用的是length()方法,在这里要将String类的length()方法与数组的length属性区分开来
实例如下:
System.out.println(str1+"的长度为"+str1.length());
结果显示如下:
5、查找一个指定的字符串子否存在
在String中使用indexof()方法,可以返回指定字符串的位置,如果不存在则返回-1
验证以上方法
String str1 = "abcdefcgh";System.out.println(str1.indexOf("c"));//查到返回位置System.out.println(str1.indexOf("c", 3));//从第四个位置开始查起,查到返回位置System.out.println(str1.indexOf("X"));//没有查到返回-1显示结果如下:
6、去掉左右空格
在实际开发中,会经常遇到去掉空格的问题,trim()方法很好的解决了这个问题
验证代码如下:
String str1 = " hello ";System.out.println(str1.trim());结果显示为:
7、字符串截取
在String中提供了两个substring()方法,一个是从指定位置截取到字符串结尾,一个是截取指定范围的内容
演示代码片段如下:
String str1 = "hello world";System.out.println(str1.substring(6));//从第七个位置开始截取System.out.println(str1.substring(0,5));//截取0~5个位置的内容结果为:
8、按照指定的字符串拆分字符串
在String中通过split()方法来进行字符串的拆分操作,拆分的数据将以字符串数组的形式返回
验证代码如下:
String str1 = "hello my baby";String[] s = str1.split(" ");//按空格进行字符串的拆分for(String x : s){//foreach 循环输出数组System.out.println(x);}结果为:
9,、字符的大小写转换也是我们经常需要对字符串的处理,此时就可以用toUpperCase()和toLowerCase()来进行处理
代码如下:
System.out.println("将\"hello world!\"转换为大写为:"+"hello world".toUpperCase());System.out.println("将\"HELLO WORLD!\"转换为小写为:"+"HELLO WORLD".toLowerCase());结果显示如下:
10、判断是否以指定的字符串开头或结尾
String类使用startsWith()和endsWith()来解决这个问题
验证以上方法:
String str1 = "***hello";String str2 = "world###";if(str1.startsWith("***")){System.out.println("\""+str1+"\""+"以***开头");}if(str2.endsWith("###")){System.out.println("\""+str2+"\""+"以###结尾");
}
结果显示如下:
11、不区分大小写进行字符串比较
在String类中可以通过equals()方法进行字符串内容比较,但这种方法是进行大小写区分的,如果要完成大小写不区分的比较则可以使用equalsIgnoreCase()方法
演示代码如下:
String str1 = "HELLO";String str2 = "hello";System.out.println("\"HELLO\"equals\"hello\""+str1.equals(str2));System.out.println("\"HELLO\"equalsIgnoreCase\"hello\""+str1.equalsIgnoreCase(str2));结果显示为:
12、将一个指定的字符串替换成其他的字符串
String的replaceALL()很好的解决了这个问题
验证以上方法:
String str = "hello";String newStr = str.replaceAll("l", "**");System.out.println("替换之后的结果为"+newStr);结果为:
好了基本的方法就以上这些,可能有些不全
*****以下为一道比较常见的字符串处理的题目*****
演示代码如下:
import java.util.Arrays;public class TestDemo1 {public static void main(String[] args) {/* * 问题描述: * 将一个字符串长句按照它的首字母的Assii码排序后重新输出*/String str = "Good Good Study Day Day Up!";String[] s = str.split(" ");Arrays.sort(s);String newstr = "";for(int i = 0; i < s.length; i++){newstr = newstr + s[i] + " "; }System.out.println("newstr是"+newstr);}}显示结果如下
以上没考虑字符串引用改变问题,开发中最好用StringBuffer
以下为演示代码:
String str = "Good Good Study Day Day Up!";String[] s = str.split(" ");Arrays.sort(s);StringBuffer sb = new StringBuffer();for(int i = 0; i < s.length; i++){sb.append(s[i]+" ");}System.out.println("newstr是"+sb);显示结果:
- String主要方法及用法
- c++ string主要的用法
- c++ string主要的用法
- c++ string主要的用法
- string.Join()方法用法
- UniDDataBase-介绍及主要用法总结
- JSP主要用法及共享总结
- String、StringBuffer、StringBuilder主要区别及使用选择
- String.format()方法用法解说
- java string 方法 toString用法
- StringBuffer的主要方法,及其与StringBuilder、String的关系
- getElementById 方法及用法
- String方法及String类型相关东西
- Java中主要关键字的含义及用法
- xmemcached主要用法及与Spring集成--总结
- xmemcached主要用法及与Spring集成--总结
- xmemcached主要用法及与Spring集成--总结
- String常用方法及属性
- 午睡醒来,全身冰凉得难受,每当这个时候
- GoogleMap入门教程 02
- XML DOM 属性和方法
- phpexcel php导入导出excel表格的简单方法
- 那些 iOS 7 中容易被忽视的新特性总结
- String主要方法及用法
- 归并排序
- 实现复数类中运算符重载(3)
- html5 [2] ~之 音频视频
- 图的最大流-前置推送标签方法
- Ubuntu 12.04下安装sun-java6-jdk/jre
- 状态栏
- XAMPP 中使用SMTP服务
- Length of Last Word