JAVA基础(32)---字符串的方法

版权声明:如需转载请标明出处 https://blog.csdn.net/yj201711/article/details/83855697

String类关于字符串的常用操作:
            ① 获取功能:
                (1)public int length():返回此字符串的长度;
                (2)public char charAt(int index):获取指定索引处的字符;
                (3)public int indexOf(String str)和public int indexOf(int ch):获取第一次出现指定字符串/字符处的索引号。int ch参数传递的是int类型,实际上也就是支持传递char类型。
                (4)public int lastIndexOf(String str)和public int lastIndexOf(int ch):获取最后一次出现指定字符串/字符处的索引号。
                (5)public int indexOf(String str,int fromIndex)和public int indexOf(int ch, int fromIndex):返回指定字符串/字符在此字符串中从指定位置后第一次出现处的索引。
                (6)String substring(int start):从指定位置开始截取字符串,默认到末尾。
                (7)String substring(int start,int end):从指定位置开始到指定位置结束截取字符串。
                (8)String concat(String str):把字符串拼接。返回新字符串。

public class StringDemo{
	/*
	获取:
		(1)public int length():返回此字符串的长度;
		(2)public char charAt(int index):获取指定索引处的字符;
		(3)public int indexOf(String str)和public int indexOf(int ch):获取第一次出现指定字符串/字符处的索引号。int ch参数传递的是int类型,实际上也就是支持传递char类型。
		(4)public int lastIndexOf(String str)和public int lastIndexOf(int ch):获取最后一次出现指定字符串/字符处的索引号。
		(5)public int indexOf(String str,int fromIndex)和public int indexOf(int ch, int fromIndex):返回指定字符串/字符在此字符串中从指定位置后第一次出现处的索引。
		(6)String substring(int start):从指定位置开始截取字符串,默认到末尾。
		(7)String substring(int start,int end):从指定位置开始到指定位置结束截取字符串。
		(8)String concat(String str):把字符串拼接。返回新字符串。
		面试题:
			1 数组中获取长度和字符串中获取长度有什么区别?
				数组:length属性;
				字符串:length()方法
		练习题:
			在字符串"ajavadfsafjavakdlkljjavalkljj",来查找子字符串"java"出现的次数


	*/
	public static void main(String[] args){
		String str  = "javasejavase";
		System.out.println("字符串的长度为:"+str.length());
		String str1 = "se";
		int index = str.indexOf(str1);
		System.out.println("字符串'se'在str中第一次出现的位置的索引号:"+index);
		int ind = str.indexOf(97);
		System.out.println("97在str中对应的字符第一次出现的索引号:"+ind);
		String str2 = "rt";
		int ind2 = str.indexOf(str2,2);
		System.out.println(ind2);
		String sub1= str.substring(5);//包含开始
		System.out.println(sub1);
		String sub2= str.substring(5,7);//包含开始但不包含结尾
		System.out.println(sub2);
		String str3 = str.concat(sub2);
		System.out.println(str3);
		System.out.println("------------------------------------");
		String str4 = "ajavadfsafjavakdlkljjavalkljavaj";
		String keyStr = "java";
		int count= 0 ;
		int index4 = 0;
		while(index4 != -1  ){
			index4 = str4.indexOf(keyStr);
			count++;
			if((index4 + keyStr.length()) <= str4.length()){
				str4 = str4.substring(index4 + keyStr.length());
			}
			
		}
		System.out.println("java在str中出现的次数为:" + (count - 1));



	}
}

② 判断方法
                (1)boolean equalsIgnoreCase(String str):比较字符串内容相同时忽略大小写;
                (2)boolean contains(String str):判断是否包含指定字符串;
                (3)boolean startsWith(String str):判断字符串是否以指定的字符串开头;
                (4)boolean endsWith(String str):判断字符串是否以指定的字符串结尾;
                (5)boolean isEmpty():判断字符串是否为空。注意,字符串为空指的是空字符串””,而不是null。因为null是空指针,null不能调用方法,否则出现空指针异常NullPointerException
          
            ③ 转换方法
                (1)byte[] getBytes():把字符串转换为字节数组。
                (2)char[] toCharArray():把字符串转换为字符数组。
                (3)static String valueOf(char[] chs):把字符数组转成字符串。
                (4)static String valueOf(int i):把int类型的数据转成字符串。
            注意:String类的valueOf静态方法可以把任意类型的数据转成字符串。
                (5)String toLowerCase():把字符串转成小写。
                (6)String toUpperCase():把字符串转成大写。

④其他方法
                (1)String replace(char old,char new)和String replace(String old,String new):将字符串中原有的指定字符串替换成新的字符串/字符。
                (2)String trim():去除字符串的两端空格。
                (3)int compareTo(String str)
                (4)int compareToIgnoreCase(String str)

public class StringDemo2{
		/*
			(1)boolean equalsIgnoreCase(String str):比较字符串内容相同时忽略大小写;
		  (2)boolean contains(String str):判断是否包含指定字符串;
		  (3)boolean startsWith(String str):判断字符串是否以指定的字符串开头;
		  (4)boolean endsWith(String str):判断字符串是否以指定的字符串结尾;
		  (5)boolean isEmpty():判断字符串是否为空。不为空返回false  为空返回true
				注意,字符串为空指的是空字符串””,而不是null。
				因为null是空指针,null不能调用方法,否则出现空指针异常NullPointerException
		*/
		public static void main(String[] args){
			String str = "helloWord";
			boolean isContains = str.contains("hello");
			System.out.println(isContains);
			boolean isStartsWith = str.startsWith("hell");
			System.out.println(isStartsWith);
			String str1 = "abc.doc";
			boolean isEndWith = str1.endsWith(".doc");
			System.out.println(isEndWith);
			str = null;
			str = "";//空字符串
			String str2 = new String();
			boolean empty = str2.isEmpty();
			
			System.out.println(empty);//
			byte[] str2ByteArr = str1.getBytes();
			for(int i = 0 ; i < str2ByteArr.length; i++){
					System.out.println(str2ByteArr[i]);
			
			}
			//char[] toCharArray():把字符串转换为字符数组。
			char[] str2Char = 	str1.toCharArray();
			for(int i = 0 ; i < str2Char.length; i++){
					System.out.println(str2Char[i]);
			
			}
			//static String valueOf(char[] chs):把字符数组转成字符串
			String char2Str = String.valueOf(str2Char);
			System.out.println(char2Str);
			/*
			(1)String replace(char old,char new)和String replace(String old,String new):将字符串中原有的指定字符串替换成新的字符串/字符。
		  (2)String trim():去除字符串的两端空格。
		  (3)int compareTo(String str)
		  (4)int compareToIgnoreCase(String str)
			*/
			String str3 = "abcdadadc";
			String str4 = str3.replace('a','m');
			System.out.println(str4);
			String str5 = str3.replace("ad","kl");
			System.out.println(str5);
			String str6 ="   rer   eqr   ";
			System.out.println("-----------------------");
			System.out.println(str6);
			String str7 = str6.trim();
			System.out.println(str7);
		}
}

 

 

 

 

 

猜你喜欢

转载自blog.csdn.net/yj201711/article/details/83855697