字符串是Java语言中非常重要的数据类型,但是,它不是基本数据类型,而是String类的实例,即字符串对象。采用字符串对象的方式进行字符串的操作与处理能够使字符串应用更加灵活与方便。
字符串包含很多个字符,使用一对“”(双引号)包括。例如:“Java语言很有意思。”。如何产生String对象呢?一是直接赋值;二是使用String类的构造方法创建。例如:
String str1 = "Java语言很有意思";
String str2 = new String("Java语言很有意思");
字符串在程序开发中应用非常广泛,String类中提供了很多关于字符创操作的方法,详情可查阅J2SE官方文档。在此,说说字符串操作常用方法。
1.获取字符串长度方法length()
2.截取字符串方法substring()
3.分割字符串方法split()
4.去掉字符串尾部空格方法trim()
5.查找字符串方法indexOf()
6.比较字符串是否相等的方法equals()
以上常用方法的实例代码如下:
/**
*String类重用方法实例
*/
public class StringDemo {
public static void main(String[] args) {
String str1= "Java语言很有意思";
String str2 = new String("Java语言很有意思");
String str3 = " 社交网络,移动互联网, 大数据,云计算应用 ";
int length = str1.length();
System.out.println("str1 的长度是:" + length);
String subStr1 = str2.substring(1);
String subStr2 = str2.substring(1,3);
System.out.println("截取Str2的字符串1:" + subStr1);
System.out.println("截取Str2的字符串2:" + subStr2);
String[] splitStr = str3.split(",");
for(int i=0;i<splitStr.length;i++) {
System.out.println(splitStr[i]);
}
System.out.println(str3.trim());
int index = str1.indexOf("Ja");
System.out.println("Ja在" + str1 + "中第一次出现的索引为:" + index);
System.out.println("str1 中的内容是否和str2中的内容相等?" + str1.equals(str2));
}
}
运行结果如下所示:
虽然利用String类创建对象,可以带来很多便利,但是它的长度是固定的,内容不能改变。StringBuffer类可以创建内容可以改变的的字符串。StringBuffer类常用的方法如下:
1.追加内容的方法append()
2.移除字符串内容的方法delete()
3.向字符串具体位置插入内容的方法insert()
以上方法实例代码如下:
/**
*StringBuffer类的常用方法实例
*/
public class StringBufferDemo {
public static void main(String[] args) {
StringBuffer bf = new StringBuffer("Java");
bf.append("语言很有意思");
System.out.println(bf);
bf.delete(0,3);
System.out.println(bf);
bf.insert(0,"Java");
System.out.println(bf);
}
}
运行结果如下所示:
总结:
1.Java语言,基于String对象来操作和处理字符串。
2.利用Sting类的方法,可以完成许多有用的工作。例如,字符串反转,字符串的大小写转换等。
附录:字符串反转的方法,代码如下:
/**
*字符串反转
*/
public class StringReverse {
/**
*方法描述:利用split()方法协助,实现字符串反转
*输入参数:
*返回类型:String
*/
public static String splitReverse() {
String[] str1 = str.split("");
String strRes1 = "";
int length = str1.length;
for(int i=length-1;i>=0;i--) {
strRes1 += str1[i];
}
return strRes1;
}
/**
*方法描述:利用chatAt()方法协助,实现字符串反转
*输入参数:
*返回类型:String
*/
public static String chatAtReverse() {
String strRes2 = "";
int length = str.length();
for(int i=length-1;i>=0;i--) {
strRes2 += str.charAt(i);
}
return strRes2;
}
public static void main(String[] args) {
System.out.println("字符串反转前:");
System.out.println(str);
System.out.println("利用split()方法协助,反转结果:");
System.out.println(splitReverse());
System.out.println("利用charAt()方法协助,反转结果");
System.out.println(chatAtReverse());
}
private static String str = "Java语言很有意思";
}
运行结果如下所示:
参考资料:
【1】明日科技 李钟尉 陈丹丹编著.Java编程宝典.北京:人民邮电出版社,2010
分享到:
相关推荐
* 使用一个字符串分割另一个字符串 * * @param delimiter 边界上的分隔字符 * @param haystack 输入的字符串 * @param out 输出的字符串指针 * @return 分割成了多少个成员 */ int explode(char *delimiter, ...
java 字符串转16进制 16进制转字符串 将两个ASCII字符合成一个字节; java 字符串转16进制 16进制转字符串 将两个ASCII字符合成一个字节; java 字符串转16进制 16进制转字符串 将两个ASCII字符合成一个字节; java ...
本文实例讲述了C#判断字符串是否存在字母及字符串中字符的替换的方法。分享给大家供大家参考。具体实现方法如下: 首先要添加对命名空间“using System.Text.RegularExpressions;”的引用 下面以一个字符串为例: ...
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。如果要检索的字符串值没有出现,则该方法返回 -1。 方法二:match() var str = "123" var reg = RegExp(/3/); if(str.match(reg)){ //包含; } ...
Delphi 7.0 提取字符串中指定子字符串后的字符串,这个平时在字符处理时候使用几率也挺高的,获取指定字符串后面的字符串,比如获取扩展名等也可以用此方法,本例中要用到After函数,测试时,当单击按钮时,执行以下...
编写程序:从键盘上输入一个包含10个字符的字符串,把该字符串与程序中给定的字符串("bacdbcabca") //依次比较,统计两个字符串对应字符相等的数目。然后输出从键盘上输入的字符串, //并把两个字符串中对应字符不...
给写了2个方法,一个是直接截取单个需要的字符串,比如字符串string a="ab123456",我只需要提取3,那么就是单独截取就可以了,从2开始到4结束就行。 第二个是把所有的符合条件的字符串都截取出来,提取出来,比如...
本文实例讲述了javascript实现的字符串与十六进制表示字符串相互转换方法。分享给大家供大家参考。具体如下: 之所以写这个,是因为发现SQL注入和XSS中经常利用十六进制表示的字符串,比如 SELECT CONCAT(0x68656c6...
C#字符串删除指定字符串|C#字符串删除子字符串
本文实例汇总了C++常用字符串分割方法,分享给大家供大家参考。具体分析如下: 我们在编程的时候经常会碰到字符串分割的问题,这里总结下,也方便我们以后查询使用。 一、用strtok函数进行字符串分割 原型: char *...
string常用截取字符串方法有很多,但是配合使用以下两种,基本都能满足要求: find(string strSub, npos); find_last_of(string strSub, npos); 其中strSub是需要寻找的子字符串,npos为查找起始位置。找到返回子...
通过键盘输入一串小写字母(a~z)组成的字符串,将字符串中连续出席的重复字母进行压缩,并输出压缩后的字符串。 压缩字段的格式为"字符重复的次数+字符"。例如:字符串"xxxyyyyyyz"压缩后就成为"3x6yz"。 要求实现...
这个代码可以添加一个新的字符串到已有的字符串数组中,并确保不会重复添加相同的字符串。具体来说,它首先创建了一个包含3个字符串的字符串数组`strArray`,然后定义了一个新的字符串`newStr`。接着,使用`ismember...
|PowerBuilder 数组字符串相互转化 天津 李华锋 * * | | * *PowerBuilder 数组字符串相互转化 完全免费 * * | | * *如果你将这个程序放在你的网站上,我希望你能同时加上本站的链接 | | * | * | * *老字符串转数组...
编写控制台应用程序,接受长度大于3的字符串,完成以下功能: 1:输出字符串长度 2:输出字符串中第一个出现字母a的位置 3:在字符串的第3个字符后面插入字符串“hello”,输出新字符串. 4:将字符串“hello”替换为...
字符串数组 matlabMATLAB字符串数组 基本规则 (1)所有字符串都用单引号(英文状态下输入)括起来; (2)将字符串当作一个行向量,每个元素对应一个字符,其标识方法和数值向量相同。 (3)size指令获得串数组的大小。串...
按字典顺序比较两个字符串。该比较基于字符串中各个字符的 Unicode 值。将此 String 对象表示的字符序列与参数字符串所表示的字符序列进行比较。如果按字典顺序此 String 对象在参数字符串之前,则比较结果为一个负...
必须实现如下操作,字符串比较、求串的长度、判断串是否为空、将串置空、字符串赋值(包括两个字符串类复制,一个字符串赋值到CmyString对象)、求字符串中的一个字符或改变字符串中的一个字符(采用重载[]),...
输入一个字符串,分别统计出其中英文字母、空格、数字和其它字符的个数,本文给出解决方法 编写思路: 1、字符串的遍历,和列表类似,可以把字符串当做元素都是一个字符的一个字符列表,它可以和列表有公共的语法 2...
编写函数void fun(char *s,char *t,char *p)将未在字符串s中出现、而在字符串t中出现的字符, 形成一个新的字符串放在p中,p中字符按原字符串中字符顺序排列,但去掉重复字符。 例如: 当s为"12345", t为"8624677"时, p...