java中的String类(来自毕向东老师视频资料)

来源:互联网 发布:手机数独软件 编辑:程序博客网 时间:2024/05/08 04:45

package cn.itcast.p1.string.demo;public class StringDemo {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stub/* * String类的特点: * 字符串对象一旦被初始化就不会被改变。 *  */stringDemo2();}public static void stringDemo2() {// TODO Auto-generated method stubString s = "abc";//创建一个字符串对象在常量池中。String s1 = new String("abc");//创建两个对象一个new一个字符串对象在堆内存中。System.out.println(s==s1);//falseSystem.out.println(s.equals(s1));//string类中的equals复写Object中的equals建立了string类自己的判断字符串对象是否相同的依据。//其实就是比较字符串内容。//System.out.println("s="+s);//System.out.println("s1="+s1);}/** * 演示字符串定义的第一种方式,并明确字符串常量池的特点. * 池中没有就建立,池中有,直接用。 */private static void stringDemo1() {String s = "abc";//"abc"存储在字符串常量池中。//s = "nba";String s1 = "abc";System.out.println(s==s1);//true?//System.out.println("s="+s);}}

package cn.itcast.p1.string.demo;public class StringConstructorDemo {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stub/* * 将字节数组或者字符数组转成字符串可以通过String类的构造函数完成。 */stringConstructorDemo2();}private static void stringConstructorDemo2() {char[] arr = {'w','a','p','q','x'};String s = new String(arr,1,3);System.out.println("s="+s);}public static void stringConstructorDemo() {String s = new String();//等效于String s = "";  不等效String s = null;byte[] arr = {97,66,67,68};String s1 = new String(arr);System.out.println("s1="+s1);}}

package cn.itcast.p1.string.demo;public class StringMethodDemo {/** * @param args */public static void main(String[] args) {/* * 按照面向对象的思想对字符串进行功能分类。 * "abcd" *  * 1,获取: * 1.1 获取字符串中字符的个数(长度). * int length(); * 1.2 根据位置获取字符。 * char charAt(int index); * 1.3 根据字符获取在字符串中的第一次出现的位置. * int indexOf(int ch) * int indexOf(int ch,int fromIndex):从指定位置进行ch的查找第一次出现位置  * int indexOf(String str); * int indexOf(String str,int fromIndex); *  根据字符串获取在字符串中的第一次出现的位置. * int lastIndexOf(int ch) * int lastIndexOf(int ch,int fromIndex):从指定位置进行ch的查找第一次出现位置  * int lastIndexOf(String str); * int lastIndexOf(String str,int fromIndex); * 1.4 获取字符串中一部分字符串。也叫子串. * String substring(int beginIndex, int endIndex)//包含begin 不包含end 。 * String substring(int beginIndex); *  *  *  * 2,转换。 * 2.1 将字符串变成字符串数组(字符串的切割) * String[]  split(String regex):涉及到正则表达式. * 2.2 将字符串变成字符数组。 * char[] toCharArray(); * 2.3 将字符串变成字节数组。 * byte[] getBytes(); * 2.4 将字符串中的字母转成大小写。 * String toUpperCase():大写 * String toLowerCase():小写 *2.5  将字符串中的内容进行替换 *String replace(char oldch,char newch); * String replace(String s1,String s2); * 2.6 将字符串两端的空格去除。 * String trim(); * 2.7 将字符串进行连接 。 * String concat(string); *  * 3,判断 * 3.1 两个字符串内容是否相同啊? * boolean equals(Object obj); * boolean equalsIgnoreCase(string str);忽略大写比较字符串内容。 * 3.2 字符串中是否包含指定字符串? * boolean contains(string str); * 3.3 字符串是否以指定字符串开头。是否以指定字符串结尾。 * boolean startsWith(string); * boolean endsWith(string); *  * 4,比较。 *  */stringMethodDemo_4();//System.out.println("abc".concat("kk"));//System.out.println("abc"+"kk");//System.out.println(String.valueOf(4)+1);//System.out.println(""+4+1);}private static void stringMethodDemo_4() {System.out.println("abc".compareTo("aqz"));}private static void stringMethodDemo_3() {String s = "abc";System.out.println(s.equals("ABC".toLowerCase()));System.out.println(s.equalsIgnoreCase("ABC"));System.out.println(s.contains("cc"));String str  = "ArrayDemo.java";System.out.println(str.startsWith("Array"));System.out.println(str.endsWith(".java"));System.out.println(str.contains("Demo"));}private static void stringMethodDemo_2() {String  s = "张三,李四,王五";String[] arr = s.split(",");for (int i = 0; i < arr.length; i++) {System.out.println(arr[i]);}char[] chs = s.toCharArray();for (int i = 0; i < chs.length; i++) {System.out.println(chs[i]);}s = "ab你";byte[] bytes = s.getBytes();for (int i = 0; i < bytes.length; i++) {System.out.println(bytes[i]);}System.out.println("Abc".toUpperCase());String s1 = "java";String s2 = s1.replace('q', 'z');System.out.println(s1==s2);//trueSystem.out.println("-"+"    ab  c    ".trim()+"-");}private static void stringMethodDemo_1() {String  s = "abcdae";System.out.println("length:"+s.length());//6System.out.println("char:"+s.charAt(2));//c//StringIndexOutOfBoundsExceptionSystem.out.println("index:"+s.indexOf('k'));//0//-1 我们可以根据-1,来判断该字符或者字符串是否存在。System.out.println("lastIndex:"+s.lastIndexOf('a'));//4System.out.println("substring:"+s.substring(2,4));}}


package cn.itcast.p1.string.demo;public class StringObjectDemo {/** * @param args */public static void main(String[] args) {//String s1 = "abc";//String s2 = "abc";//intern():对字符串池进行操作的 String s1 = new String("abc");String s2 = s1.intern();System.out.println(s1==s2);//false}}

0 0
原创粉丝点击