package test;
public class Demo1 {
public static void main(String[] args) {
//1对象的比较
String str1 = "hello";
String str2 = "hello";
String str3 = new String("hello");
String str4 = new String("hello");
System.out.println("str1==str2?"+(str1==str2)); // true
System.out.println("str2==str3?"+(str2==str3)); //false
System.out.println("str3==str4?"+(str3==str4)); // false
System.out.println("str3.equals(str2)?"+(str3.equals(str4))); //true
//是String类重写了Object的equals方法,比较的是两个字符串对象 的内容 是否一致。
// "=="用于比较 引用数据类型数据的时候比较的是两个对象 的内存地址,equals方法默认情况下比较也是两个对象 的内存地址。
//2.构造方法
/*
1>.String() 创建一个空内容 的字符串对象。
2>.String(byte[] bytes) 使用一个字节数组构建一个字符串对象
3>.String(byte[] bytes, int offset, int length)
bytes : 要解码的数组
offset: 指定从数组中那个索引值开始解码。
length: 要解码多个元素。
4>.String(char[] value) 使用一个字符数组构建一个字符串。
5>.String(char[] value, int offset, int count) 使用一个字符数组构建一个字符串, 指定开始的索引值,与使用字符个数。
6>.String(int[] codePoints,int offset,int count)
7>.String(String original)
记住: 使用字节数组或者字符数组都可以构建一个字符串对象。
*/
//1>.
String str = new String();
//2>.
byte[] buf = {97,98,99};
str = new String(buf);
//3>.
str = new String(buf,1,2);
//4>.
char[] arr = {'a','b','c'};
str = new String(arr);
//5>.
str = new String(arr,1,2);
//6>.
int[] arrInt = {97,98,99};
str = new String(arrInt,1,2);
//7>.
str = new String("123");
System.out.println(str);
/*
3 获取方法
1>.int length() 获取字符串的长度
2>.char charAt(int index) 获取特定位置的字符 (角标越界)
3>.int indexOf(String str) 查找子串第一次出现的索引值,如果子串没有出现 在字符串中,那么则返回-1表示。
4>.int lastIndexOf(String str) 查找子串最后一次出现的索引值 , 如果子串没有出现 在字符串中,那么则返回-1表示
*/
str = new String("abcdefgbc");
System.out.println("字符串的长度:"+str.length());
System.out.println("获取特定位置的字符"+str.charAt(2));
System.out.println("查找子串第一次出现的索引值:"+str.indexOf("bc"));
System.out.println("查找子串最后一次出现的索引值:" + str.lastIndexOf("bc"));
/*
4 判断方法
boolean endsWith(String str) 是否以指定字符结束
boolean isEmpty()是否长度为0 如:“” null V1.6
boolean contains(CharSequences) 是否包含指定序列 应用:搜索
boolean equals(Object anObject) 是否相等
boolean equalsIgnoreCase(String anotherString) 忽略大小写是否相等
*/
str = new String("Demo.java");
System.out.println("是否以指定 的字符串结束:"+ str.endsWith("ja"));
System.out.println("判断字符串是否为空内容:"+str.isEmpty());
System.out.println("判断字符串是否包含指定的内容:"+ str.contains("Demo"));
System.out.println("判断两个 字符串的内容是否一致:"+ "DEMO.JAVA".equals(str));
System.out.println("判断两个字符串的内容是否一致(忽略大小写比较):"+ "DEMO.JAVA".equalsIgnoreCase(str));
/*
5 转化方法
String(char[] value) 将字符数组转换为字符串
String(char[] value, int offset, int count)
Static String valueOf(char[] data) 将字符数组转换为字符串 注意此方法为静态方法
static String valueOf(char[] data, int offset, int count)
char[] toCharArray() 将字符串转换为字符数组
*/
/*
6 其他方法
String replace(String oldChar, String newChar) 替换
String[] split(String regex) 切割
String substring(int beginIndex) 指定开始 的索引值截取子串
String substring(int beginIndex, int endIndex)指定开始 与结束的索引值截取子串
String toUpperCase() 转大写
String toLowerCase() 转小写
String trim() 去除字符串首尾的空格
*/
}
}
String类构造方法与普通方法--Java基础058
原创
©著作权归作者所有:来自51CTO博客作者待???的一天的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:StringBuffer增长方式
下一篇:String创建对象问题

提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
java构造方法中怎么对字段初始化
java构造方法中怎么对字段初始化
构造方法 字段 初始化 -
java stringArray构造 java string类构造方法
string 在java.lang包内,所以实现的时候不需要导包定义: string类代表字符串,Java程序中的所以的字符串文字(例如”abc“)都被实现为此类的实例也就是说,java程序中的所有的双引号字
java stringArray构造 java 开发语言 字符串 bc -
java string数据结构 java string类构造方法
前面一篇,了解了String类的基本特点和使用方法。这篇,我们来学习String类的构造函数。在JAVA 1.6 API文档中,我们可以找到15个String类的构造方法,下面我们学习几个重要的就行。 1.空构造 public String()
java string数据结构 JAVA字符串 字符串 System 构造函数