博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java基础-字符串
阅读量:6260 次
发布时间:2019-06-22

本文共 1805 字,大约阅读时间需要 6 分钟。

  hot3.png

从表面上看,字符串就是双引号之间的数据,在Java中,可以使用下面的方法定义字符串: String stringName = "string content"; 例如: String str = "wordpress" ; 字符串可以通过“+”连接,基本数据类型与字符串进行“+”操作一般也会自动转换为字符串,例如:
public static void main(String[] args) throws ParseException {		String str = "hello";		str+=" world";		System.out.println(str);	}
String字符串与数组有一个共同点,就是它们被初始化后,长度是不变的,并且内容也不变。如果要改变它的值,就会产生一个新的字符串 实际上,String 是java.lang包下的一个类,按照标准的面向对象的语法,其格式应该为:
String stringName = new String("string content");
但是由于String特别常用,所以Java提供了一种简化的语法。
String stringName = "string content";
使用简化语法的另外一个原因是,按照标准的面向对象的语法,在内存使用上存在比较大的浪费。例如String str = new String(“abc”);实际上创建了两个String对象,一个是”abc”对象,存储在常量空间中,一个是使用new关键字为对象str申请的空间。

字符串操作

String对象有很多方法,可以方便的操作字符串。

1) length() 方法

length() 返回字符串的长度,例如:
public static void main(String[] args) throws ParseException {		String str = "hello,您好";		str+=",world,世界,123";		System.out.println(str.length());	}
输出结果:21 可见,无论是字母、数字,还是汉字,每个字符的长度都是1。

2) charAt() 方法

charAt() 方法的作用是按照索引值获得字符串中的指定字符。Java规定,字符串中第一个字符的索引值是0,第二个字符的索引值是1,依次类推。例如:
String str = "123456789";System.out.println(str.charAt(0) + " " + str.charAt(5) + " " + str.charAt(8));
输出结果: 1    6    9

3) contains() 方法

contains() 方法用来检测字符串是否包含某个子串,例如:
String str = "helloworld";System.out.println(str.contains("hello"));
输出结果:true

4) replace() 方法

字符串替换,用来替换字符串中所有指定的子串,例如:
public static void main(String[] args) throws ParseException {		String str = "hheello";		System.out.println(str.replace("h", "o"));	}
输出结果:ooeello 注意:replace() 方法不会改变原来的字符串,而是生成一个新的字符串。

5) split() 方法

以指定字符串作为分隔符,对当前字符串进行分割,分割的结果是一个数组,例如:
public static void main(String[] args) throws ParseException {		String str = "hheello";		String [] strArr=str.split("e");		System.out.println( Arrays.toString(strArr));	}
运行结果:[hh, , llo] 以上仅仅列举了几个常用的String对象的方法,更多方法和详细解释请参考API文档。

转载于:https://my.oschina.net/ecp/blog/635373

你可能感兴趣的文章
JavaSE6基于JSR105的XML签名之理论篇
查看>>
hadoop命令——hdfs
查看>>
cocos2d-x自制工具04:AnimatePacker for Mac/Win32 v2.0 Build1发布!
查看>>
ORA 12592的报错处理及补丁更新
查看>>
修改活动目录服务器的IP地址及域名注意
查看>>
C#发送电子邮件
查看>>
xslt中的for-each排序
查看>>
在SQL Server2005中进行错误捕捉
查看>>
Net操作配置文件(Web.config|App.config)通用类
查看>>
文本编辑器实例
查看>>
EntityFramework之一对一关系(二)
查看>>
我心中的核心组件(可插拔的AOP)~调度组件quartz.net续~任务管理器的开发(CronTrigger强大功能)...
查看>>
Html2Text
查看>>
spring boot + mybatis实现一对一,一对多的样码之一种
查看>>
Android OpenGL ES 应用(二) 纹理
查看>>
谈谈D2
查看>>
解决li在ie,firefox中行高不一致问题
查看>>
[译] OpenStack Liberty 版本中的53个新变化
查看>>
How to mount usb device in CentOS?
查看>>
机器学习中的贝叶斯方法---当后验分布无法计算时如何求得预测模型?
查看>>