java常用类之String类

public class StringTest{
/*
* 1、字符串类: String 。
* 1) 什么是字符串?
* 用一对双引号将一个或多个字符括起来组成的字符系列。例如: "A" "ABC"
* 特殊的串: 一对连续的双引号。即: "" ,它称之为空串。也称之为长度为0的字符串。
*
* 2) 字符串的特性:
* a) 字符串属于引用类型,一个字符串就是一个对象。
* b) 字符串是不变的。
* c) 字符串中每一个字符都有一个索引号(位置编号)。它从0开始至 length()-1。其中: length()方法用来求串的长度。
* 例如: "ABCDEFG" 其中字符A的索引号为 0, 而G的索引号为 6;串的长度为 length()===>>> 7 。
* d) 在内存,一个字符串可以共享。即:当多个相同的字符串赋给字符串变量时,则在内存中实质只有一个串。
* 例如: String s1 = "ABC"; String s2 = "ABC"; 则 s1和s2对应的是同一个串。
* e) 字符串拥有许多方法,可用来解决许多实际问题。
*
* 3) 字符串的方法:
* length()
* charAt(n);
* substring(n);
* substring(n,m);
* indexOf( s2 );
* indexOf( s2, n);
* lastIndexOf( s2 );
*/
public static void main(String[] args) {
String s1 = ""; //初始化为空串。
int len = s1.length(); //求s1对应串的长度。
System.out.println( "s1对应的串为: \"" + s1 + "\"" + ",它的长度是: " + len );

String s2 = null; //此时的null表示字符串不存在。
//len = s2.length(); //求s2对应的串的长度。 错误的原因:由于字符串对象不存在,因此,不可调用串的方法length();

s1 = "ABCDEFG";
char ch = s1.charAt(0); //获取串中第0个位置上的字符
System.out.println("\"" + s1 + "\"" + ",该串中第0个位置上的字符是 \‘" + ch + "\‘");

ch = s1.charAt( s1.length()-1 ); //取最后一个字符

String sub1 = s1.substring(3); //从s1串中的第3个位置开始取到末尾,将这些字符组成一个子串。
System.out.println("sub1>>>" + sub1 );

sub1 = s1.substring(2).substring(3);
System.out.println( sub1 );

sub1 = s1.substring(2, 5); //将从第2个位置开始至5-1个位置上的所有字符获取并组成一个子串。
System.out.println( sub1 );

s2 = "北京" + 2008; //连接作用: 先将2008转换成字符串,再进行连接。
System.out.println("s2=\"" + s2 + "\"");

s1 = "I love java! I love Beijing!";
s2 = "love";
int loc = s1.indexOf( s2 ); //在s1中按顺序查找s2,若存在,则反馈它第一次出现的位置编号。若不存在,则反馈一个负数。
if( loc >= 0 ){
System.out.println("在\"" + s1 + "\"中查找 \"" + s2 + "\"" + ",找到了. 它在 第" + loc + "个位置上。" );
}

loc = s1.indexOf(s2, 7); //在s1中从第7个位置开始查找
System.out.println(">>> " + loc );

loc = s1.lastIndexOf( s2 ); //在s1中查找s2,反馈它最后一个出现的位置编号。

s2 = s1.replace("love", "^_^");
System.out.println("原串: s1>>" + s1 );
System.out.println("新串: s2>>" + s2 );

s2 = s1.replace(‘o‘, ‘?‘);
System.out.println("原串: s1>>" + s1 );
System.out.println("新串: s2>>" + s2 );

s1 = "I love java!";
boolean flag = s1.startsWith("i"); //判断s1的串是"i"开始吗
System.out.println("flag>> " + flag );

flag = s1.endsWith("java");
System.out.println("flag>> " + flag );

s1 = "北京地铁2015图.jpg";

s1 = s1.toUpperCase(); //所有串中的字母转换成大写。
s2 = "Jpg";
s2 = s2.toUpperCase();
flag = s1.endsWith( s2 );
System.out.println( "flag>>>" + flag );

s1 = "I love java!";
System.out.println("\ns1>>" + s1 );
s1 = s1.toLowerCase(); //所有串中的字母转换成小写。
System.out.println("s1>>" + s1 );

s1 = "China" + " Beijing " + 2008;
System.out.println("\ns1>>" + s1 );

s1 = "China" + "     Beijing       ".trim() + 2008; //trim()用来将串前后的空格删除。
System.out.println("\ns1>>" + s1 );
}

}

java常用类之String类

时间: 2024-08-03 18:55:35

java常用类之String类的相关文章

Java常用正则表达式验证工具类RegexUtils.java

原文:Java常用正则表达式验证工具类RegexUtils.java 源代码下载地址:http://www.zuidaima.com/share/1550463379442688.htm Java 表单注册常用正则表达式验证工具类,常用正则表达式大集合. 1. 电话号码 2. 邮编 3. QQ 4. E-mail 5. 手机号码 6. URL 7. 是否为数字 8. 是否为中文 9. 身份证 10. 域名 11. IP .... 常用验证应有尽有! 这的确是您从事 web 开发,服务器端表单验证

【小白的java成长系列】——String类的深入分析(基于源码)

接着前面面向对象来说吧~今天来说说String类..其实String类也包含很多面向对象的知识的~ 首先来问一个问题:我们在开发过程中,如果要使用一个类的话,就要创建对象,这句话没什么问题吧~在实际开发的时候确实是这样的,只有创建了对象才能真正的去使用一个普通的类,我们一般创建对象,几乎所有的类创建对象都是要通过new关键字来创建的~ 问题就来了..为什么我们的String可以直接写成String str = "abc";这样子呢? 当然String类也可以通过new来创建对象的...

Java面试准备之String类专项突破+源码分析

String的源码中有很多Arrays的方法使用,建议先参阅Arrays的类库 基本介绍: String是一个比较特殊的类,有很多种建立的方法. 如果使用传统的构造方法比如 String s = new String("字符串");这时的对象会在堆上分配,这时候比较两个字符串地址就不相等,而用""双引号包起来的内容会在常量池中做停留,这时如果有两个内容一样的地址就一样了. 因此,使用==来比较字符串是不靠谱的. String类还实现了三个接口:Serializabl

C#中 StringBuilder类 与 String类的区别---(转)

  在找工作的时候,去了些公司,避免不了要面试和笔试.不过一般最起初的是笔试.我印象中有这样有一道题目:StringBuilder类与 String类的区别?那时候我不太清楚这两个类的区别,今天在看代码的时候,看到同事也用了StringBuilder类.于是我就上网查查了资料,也想总结下StringBuilder类与 String类的区别.学计算机语言的人一定要明白哦,说不定那天你去找工作了,也会遇到这个问题呢. String 对象是不可改变的.每次使用 System.String 类中的方法之

tchar 输入输出类 和 string 类 函数简单说明 总结各种前缀后缀

标准输入输出printf类_tprintf : 类同printf_tprintf_l : 类同printf, 但是"_l"表示第二个参数是一个locale.locale是操作系统对语言设定的参数, 这个会影响ANSI字符的语言识别, 在Unicode下应该是无差别的_tprintf_s : 类图printf, 但是和_tprintf相比, _tprintf_s多会做一些检查工作.如果你的"format string"是动态的, 这个能帮助你._tprintf_s_l

JavaSE入门学习27:Java常用类之String类(上)

一String类 字符串广泛应用在Java编程中,在Java中字符串属于对象,Java提供了String类来创建和操作字符串.在程序开 发中字符串无处不在,如用户登陆时输入的用户名.密码等使用的就是字符串.其实,在前面的章节中我们就已经使 用了字符串,例如我们在控制台中输出的 "Hello World"等. 在Java中,字符串被作为 String 类型的对象处理. String 类位于 java.lang 包中.默认情况下,该包被自动导入 所有的程序. java.lang.Strin

JavaSE入门学习28:Java常用类之String类(下)

七字符串的不变性 String对象创建后则不能被修改,是不可变的,所谓的修改其实是创建了新的对象,所指向的内存空间不同.如 下图所示: 运行结果: 结合上面的代码,关于字符串必须要了解的: 1)通过String s1="爱慕课"; 声明了一个字符串对象, s1存放了到字符串对象的引用,在内存中的存放引用关系如 下图所示: 然后通过s1="欢迎来到:"+s1; 改变了字符串s1 ,其实质是创建了新的字符串对象,变量s1指向了新创建的字符 串对象,如下图所示: 2)一旦

【转】Java 字符串常用操作(String类)

原文网址:http://www.cnblogs.com/freeabyss/archive/2013/05/15/3187057.html 字符串查找 String提供了两种查找字符串的方法,即indexOf与lastIndexOf方法. 1.indexOf(String s) 该方法用于返回参数字符串s在指定字符串中首次出现的索引位置,当调用字符串的indexOf()方法时,会从当前字符串的开始位置搜索s的位置:如果没有检索到字符串s,该方法返回-1 1 String str ="We are

Java (六、String类和StringBuffer)

Java String 类 字符串广泛应用 在Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串. 创建字符串 // ==比较的是字符串在栈中存放的首地址,而equals()比较的是两个字符串的内容是否相同 //普通的声明字符串的方法,只会在字符串常量池里开辟空间,并且开辟空间之前,会检查字符串常量池里是否已存在 //相同的数据,如果有,直接指向已存在的数据,如果没有会在字符串常量池里开辟一个新的空间 String s = "ccy"