String类及其构造器和常用方法
String类时lang包的内置类,使用时不需要引用。
一、构造器
String():通过new方法创建字符串
String(byte[] byte):把字节数字转换为字符串
异同比较:
String str="abc";
String str1=new String("abc");
str 与str1有什么异同。
首先,str==str1,是否成立。不成立。
其次,str.equals(str1),是否成立。成立。
为什么?
因为String类的equals()方法比较的是值是否相等,很明显,str与str1的值相等。
为什么str==str1不成立呢。因为String str="abc" 与 String str1=new String("abc")两种创建String类对象的底层方法是不同的。先说String str="abc" 这种创建String类对象的方法。此种方法创建对象,首先在常量池中搜索是否有“abc”字符串,如果有,则把该字符串的地址返回给栈。如果没有则创建一个"abc"字符串,然后把地址返回给栈引用。
而new String()方法,首先在堆中创建一个对象,然后再去搜索常量池中是否有“abc”字符串,如果有,则把该字符串的地址返回给堆中的对象。如果没有则创建一个"abc"字符串,然后把地址返回给堆中的对象。此时栈保存的堆中对象的地址。
很明显,new String()方法创建的对象地址是堆中的地址,而另一种方法对象的地址是常量池中地址。很明显,两个地址是不同的。
另外,String str="abc"创建一个对象,而String str1=new String("abc")有可能创建了两个对象(在堆中创建了一个对象,如果常量池中没有“abc”字符串,还需要在常量池中创建一个对象)。
二、常用方法
int length():活动字符串的长度,注意与获得数组长度的区别,获得数组长度不需要括号
char charAt(int index):获得指定索引的字符
int codePointAt(int index):获得指定索引的字符的ASCII码
int compareTo(String anotherstring):与另外一个字符串比较,如果<0,说明在被比较字符串之前;=0,则相等;>0,说明在被比较字符串之后。
int compareToIgnoreCase(String anotherstring):比较时不区分大小写
boolean startsWith():是否以某个子字符串开始
boolean endtsWith():是否以某个子字符串介绍
s.trim():去掉s字符串前后的空格,并返回一个新字符串
boolean s.equals():比较两个字符串的值是否相等;
int indexOf(int ch):返回指定字符的第一个索引。需要注意的是,可以用字符,也可以同字符的ASCII码
eg.
String str="hello world";
int int1=str.indexOf("h");
//int int2=str.indexOf(0);这两种写法是等价的
int indexOf(int ch,int fromindex):从某个索引开始检索,然后返回指定字符的索引。注意包含fromindex索引。
int indexOf(String str):返回指定子字符串的第一个索引。
int indexOf(String str,int fromindex):从某个索引开始检索,然后返回指定子字符串的索引。
String substring(int beginindex,int endindex):返回从beginindex(含)到endindex(不含)的子字符串。
String replace(char oldchar ,char newchar):把字符串中的所有oldchar换成newchar并返回一个新字符串
String replace(charsequnce target,charsequence replacement):将字符串中的所有target换成replacement并返回一个新字符串
static String valueOf(boolean a):将一个布尔值转化为字符串形式,静态方法。由于是静态方法,使用该方法是需要类调用。如:String .valueOf(b)
static String valueOf(char a):返回字符a的字符串形式
转载于:https://www.cnblogs.com/hitnmg/p/9233025.html
String类及其构造器和常用方法相关推荐
- [Java]String类基础知识与常用方法总结
这篇文章用于记录个人学习过程中Java中String类的一些基础知识和方法.主要记录了String类的特性.常用方法,以及和基本数据类型.包装类互转方面的内容. 源码部分 我们先简易看下Java13中 ...
- java中的string类和ArrayList常用方法
Java中String类和ArrayList集合常用方法 String类常用方法 获取字符串的长度 方法很简单,很多数组都是使用这个方法来遍历数组中的元素,直接上代码: //获取字符串的长度 publ ...
- String类中的面试常考点
String类 常用方法介绍 String类是Java最常用的API,它包含了大量处理字符串的方法,比较常用的有: char charAt(int index):返回指定索引处的字符: String ...
- Java的java.lang.String类详解
String类详解 String(字符串常量)概述 在API中是这样描述: String 类代表字符串.Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现. ...
- Java基础之String类(第六天)
1.String类概述 API (Application Programming Interface,应用程序编程接口)1.Java写好的技术(功能代码),咱们可以直接调用.2.Oracle也为Jav ...
- Java String类Api文档
String类APi文档 常用方法概述 比较相关 返回值类型 方法名 描述 boolean contentEquals() 将此字符串与指定的 StringBuffer 比较. boolean end ...
- c++ string replace_Java——String类的常用方法总结
点击上方"IT咸鱼",星标公众号重磅干货,第一时间送达 一.String类String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象. ...
- java string类的方法_Java-String类的常用方法总结
一.String类 String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.java把String类声明的final类,不能有类.String类对象创 ...
- arduino char*转string_Java 中 String 类的常用方法汇总
一.String 类的概念以及特性 1.String 类的概念 String 类代表字符串,在 java.lang 包中.字符串是常量 ,用双引号引起来表示. 它的值在创建之后不能更改 .由 0 或多 ...
最新文章
- hadoop学习笔记:运行wordcount对文件字符串进行统计案例
- python--socket套接字/TCP
- geant4运行例子_Geant4--一次编译,运行多个Run,极大提升模拟效率
- Android 带着用户名的SharedPreferences
- 关于如何修改ISA server 防火墙并行最大TCP连接数问题和优化ISA 服务器淹没缓解设置
- struts2 resultType为chain时 传值
- android debug bridge tools_飞凌干货丨Android 应用程序如何获取system权限
- 如何在 macOS Monterey 中更改光标的颜色样式?
- String a = new String(“abc“); 到底创建了几个对象
- OD调试4----去除NAG窗口的几种方法
- 计算机中英文打字文章,中英文打字练习文章优美范文
- word文档图片画红线_Word文档怎么在图片内画线?
- 浏览器播放视频时蓝牙耳机自动关机
- DBLE分库分表示例
- 农村小伙从月薪2000多到年薪几十万,我的这条路大多数搬砖人都能走 ǃ
- vmware安装或卸载时,显示无法打开注册表项
- 关于微软虚拟机更新后密码问题
- 篮球架子 与 足球门
- 前端全栈工程师进阶学习笔记
- bing词典案例分析
热门文章
- 中国语言文学专业c刊排行榜,中国有名的文学刊物有哪些 十大中国著名文学刊物盘点...
- java操作mongodb_Java操作MongoDB
- php pdf 加密 签名 时间戳,在现有PDF签名上添加签名时间戳
- linux挂载硬盘 只读,mount: /dev/vdb 写保护,将以只读方式挂载
- vue 生产word_nodejs(officegen)+vue(axios)在客户端导出word文档
- 【阿里云OSS】OSS概述
- js模块化:require、import和export
- js控制 html.textboxfor,javascript - Html.TextBoxFor regex is not working - Stack Overflow
- 农村信用社计算机基础知识,2014年云南省农村信用社考试计算机基础知识练习题...
- htc m8 wp android,区别仅系统?WP/Android两版HTC One M8对比