java 关于String
1、两种创建方式
String str1 = "abc"; //字面量创建
String str2 = new String("abc"); //构造方法创建
使用字面量创建时只会生成一个对象,而通过构造方法创建时会生成两个对象(前面的str2和后面的new String对象)
2、常见的构造方法
public String() //空参构造
public String(byte[] bytes) //把字节数组转换成字符串
public String(byte[] bytes,int index,int length) //把字节数组的一部分转换成字符串
public String(char[] value) //把字符数组转换成字符串
public String(char[] value,int index,int count) //把字符数组的一部分转换成字符串
3、其它常用方法
int length() //返回字符串长度 String substring(int beginIndex,int endIndex) //获取字符串的一部分
//beginIndex 开始位置下标 endIndex 结束位置下标+1
String substring(int beginIndex) //获取字符串的一部分
//beginIndex 开始位置下标 一直到最后
boolean startsWith(String prefix) //判断一个字符串的开头、前缀是不是prefix boolean endsWith(String prefix) //判断一个字符串的结尾、后缀是不是prefix boolean contains(String s) //判断一个字符串是否包含s int indexOf(char ch) //查找一个字符,返回在字符串中第一次出现的索引,如果没找到,则返回-1 byte[] getBytes() //将字符串转换成字节数组 char[] toCharArray() //将字符串转换成字符数组 boolean equals(Object obj) //判断字符串中的字符是否完全相同,完全相同返回true,区分大小写 boolean equalsIgnoreCase(String s) //同上,忽略大小写 toUpperCase() //转大写 toLowerCase() //转小写
4、String、StringBuffer、StringBuilder
4.1、String是不可变的字符序列,在定义时长度就确定了。StringBuffer与StringBuilder是可变的字符序列,长度默认为16位,定义时不足16位的位置为空,后续可以在填充,实现长度可变。
4.2、StringBuffer是jdk1.0版本的,线程安全、效率低,StringBuilder是jdk1.5版本的,线程不安全、效率高
java 关于String的更多相关文章
- java.lang.String.getBytes(String charsetName)方法实例
java.lang.String.getBytes(String charsetName) 方法编码将此String使用指定的字符集的字节序列,并将结果存储到一个新的字节数组. 声明 以下是java. ...
- OC与c混编实现Java的String的hashcode()函数
首先,我不愿意大家需要用到这篇文章里的代码,因为基本上你就是被坑了. 起因:我被Java后台人员坑了一把,他们要对请求的参数增加一个额外的字段,字段的用途是来校验其余的参数是否再传递过程中被篡改或因为 ...
- java 创建string对象机制 字符串缓冲池 字符串拼接机制
对于创建String对象的机制,在这一过程中涉及的东西还是值得探究一番的. 首先看通过new String对象和直接赋值的方式有什么区别,看如下代码: public static void main( ...
- hibernate报错Unknown integral data type for ids : java.lang.String
package com.model; // Generated 2016-10-27 14:02:17 by Hibernate Tools 4.3.1.Final /** * CmDept gene ...
- 前台传参数时间类型不匹配:type 'java.lang.String' to required type 'java.util.Date' for property 'createDate'
springMVC action接收参数: org.springframework.validation.BindException: org.springframework.validation.B ...
- 记录maven java.lang.String cannot be cast to XX error
在项目开发中自定义了一个maven plugin,在本地能够很好的工作,但是在ci server上却无法正常工作报错为: --------------------------------------- ...
- java中string内存的相关知识点
(一):区别java内存中堆和栈: 1.栈:数据可以共享,存放基本数据类型和对象的引用,其中对象存放在堆中,对象的引用存放在栈中: 当在一段代码块定义一个变量时,就在栈中 为这个变量分配内存空间,当该 ...
- java中String的相等比较
首先贴出测试用例: package test; import org.junit.Test; /** * Created by Administrator on 2015/9/16. * */ pub ...
- javax.el.PropertyNotFoundException: Property 'name' not found on type java.lang.String
javax.el.PropertyNotFoundException: Property 'name' not found on type java.lang.String javax.el.Bean ...
- Android java传递string类型数据给C
本文接着实现<Android java传递int类型数据给C>的还未实现的方法: public native String sayHelloInC(String s); 先贴一个工具方法, ...
随机推荐
- MYSQL LOGBIN 数据日志恢复数据库随笔
查看指定的二进制日志中的事件(MYSQL命令行) mysql> show binlog events in 'binlogfullpath'; 查看二进制日志中的事件(MYSQL命令行) mys ...
- centos7安装go语言环境
安装包下载地址为:https://golang.org/dl/. 各个系统对应的包名: 解压安装 1.下载源码包:go1.7rc3.linux-amd64.tar.gz 2.将下载的源码包解压至 /u ...
- weixin设置菜单
https://jingyan.baidu.com/article/925f8cb8dfcf11c0dce05661.html
- SQL查询含有%号的字段
select * from EMS_ANNOUNCEMENT where 1=1 and title like '%\%%' escape '\'
- [T-ARA][괜찮아요][没关系]
歌词来源: 没关系:http://music.163.com/#/song?id=22704448 没关系(Remix Ver.):http://music.163.com/#/song?id=258 ...
- Vmstat主要关注哪些数据?
除特殊情况外,一般关注飘红部分 任务的信息(procs) r(running) 在internal时间段里,运行队列中的进程数,即表示正在运行或者正在等待CPU时间的进程数,如果这个参数值超过服务器上 ...
- Io性能分析
一.iostat使用说明 1.命令使用方法 使用ixstat –x 1 可以每隔1秒钟采集所有设备的io信息.其中的1类似于使用“vmstat 1”后面的1. 2.命令格式说明 ―――――――――― ...
- 常用算法的C++实现
常用算法的C++实现 // // DZAppDelegate.m // AlgorithmTest // // Created by dzpqzb on 13-8-4. // Copyright (c ...
- Angular不同版本对应的Bootstrap组件
AngularJS 1.x版本对应的 bootstrap组件库是ui-bootstrap; http://www.cnblogs.com/pilixiami/p/5597634.html Angula ...
- Django的模版引擎与模版使用
Django的模版引擎与模版使用 模版引擎是模版响应的后端.模版指的是HTML.css,js等相关的文件.模版引擎是将这些表示层文件与数据相整合在一起,然后将整合后的数据给到响应类型判断采用一次性响应 ...