Day08(常用API)学习记录

大纲:

Day08(常用API)学习目标

【学习目标】理解、了解、应用、记忆

通过今天的学习,参训学员能够:(解释的时候说出二级目标的掌握程度)

  1. 【应用】API概述
  1. 【了解】能够阐述API的作用
  2. 【应用】能够根据类名在API中快速找到该类
  1. 【应用】Scanner类与String
  1. 【应用】能够独立使用Scanner完成键盘录入字符串
  2. 【应用】能够熟练写出String类的常用构造方法
  3. 【理解】能够阐述创建字符串对象两种方式的区别
  4. 【应用】能够独立写出String判断功能与获取功能相关案例
  5. 【应用】能够独立写出String转换功能与其它功能相关案例
  1. 【应用】StringBuilder类
  1. 【理解】能够阐述StringBuilder拼接字符串高效的原因
  2. 【应用】能够完成String与StringBuilder相互转换的案例
  3. 【应用】能够利用StringBuilder把数组拼接成一个字符串案例
  4. 【应用】能够利用StringBuilder完成字符串反转案例
  5. 【应用】能够利用StringBuilder完成判断一个字符串是否是对称字符串案例

收获:

一:构造方法与赋值方法区别

通过构造方法创建字符串对象是在堆内存。

直接赋值方式创建对象是在方法区的常量池。

二:String各类功能

String类的判断功能

  1. boolean equals(Object obj):比较字符串的内容是否相同
  2. boolean equalsIgnoreCase(String str):比较字符串的内容是否相同,忽略大小写
  3. boolean startsWith(String str):判断字符串对象是否以指定的str开头
  4. boolean endsWith(String str):判断字符串对象是否以指定的str结尾

String类的获取功能

  1. int length():获取字符串的长度,其实也就是字符个数
  2. char charAt(int index):获取指定索引处的字符
  3. int indexOf(String str):获取str在字符串对象中第一次出现的索引
  4. String substring(int start):从start开始截取字符串
  5. String substring(int start,int end):从start开始,到end结束截取字符串。包括start,不包括end   

String类的转换功能

  1. char[] toCharArray():把字符串转换为字符数组
  2. String toLowerCase():把字符串转换为小写字符串
  3. String toUpperCase():把字符串转换为大写字符串

String类的其它功能

  1. 去除字符串两端空格                        String trim()
  2. 按照指定符号分割字符串                 String[] split(String str)

三:字符串与数组相互转换

1字符串转换成数组

package com.itheima_05;

public class StringDemo {
	public static void main(String[] args) {
		String s = "abcde";
		
		//char[] toCharArray():把字符串转换为字符数组
		char[] chs = s.toCharArray();
		for(int x=0; x<chs.length; x++) {
			System.out.println(chs[x]);
		}
		System.out.println("-----------");
	}
}

2把数组中的数据按照指定格式拼接成一个字符串

package com.itheima_07;

public class StringTest {
	public static void main(String[] args) {

		int[] arr = {1,2,3};
     	String s = arrayToString(arr);
		System.out.println("s:"+s);
	}
	
	public static String arrayToString(int[] arr) {
		String s = "";
		
		//[1, 2, 3]
		s += "[";
		for(int x=0; x<arr.length; x++) {
			if(x==arr.length-1) {
				s += arr[x];
			}else {
				s += arr[x];
				s += ", ";
			}
		}
		s += "]";
		return s;
	}
}

四:StringBuilder介绍

1StringBuilder:是一个可变的字符串。字符串缓冲区类。  

2String和StringBuilder的区别:  String的内容是固定的,StringBuilder的内容是可变的

3StringBuilder的常用方法

 A:构造方法:

     StringBuilder()

 B:成员方法:

public int capacity():返回当前容量 (理论值)

public int length():返回长度(已经存储的字符个数)

public StringBuilder append(任意类型):添加数据,并返回自身对象

public StringBuilder reverse():反转功能

五:利用StringBuilder把数组拼接成一个字符串

package com.itheima_03;
public class StringBuilderTest2 {
	public static void main(String[] args) {
		int[] arr = {1,2,3};
		String s = arrayToString(arr);
		System.out.println("s:"+s);
	}

	public static String arrayToString(int[] arr) {
		StringBuilder sb = new StringBuilder();
		sb.append("[");
		for(int x=0; x<arr.length; x++) {
			if(x==arr.length-1) {
				sb.append(arr[x]);
			}else {
				sb.append(arr[x]).append(", ");
			}
		}
		sb.append("]");
		
		String result = sb.toString();
		
		return result;
	}
}

六:判断一个字符串是否是对称字符串

package com.itheima_03;
import java.util.Scanner;
public class StringBuilderTest4 {
	public static void main(String[] args) {
		//键盘录入一个字符串
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入一个字符串:");
		String s = sc.nextLine();
		
		boolean b = isSymmetry(s);
		
		System.out.println("b:"+b);
	}
	public static boolean isSymmetry(String s) {
		//把字符串反转,和反转前的字符串进行比较,如果内容相同,就说明是对称字符串
		StringBuilder sb = new StringBuilder(s);
		sb.reverse();
		String result = sb.toString();
		
		return result.equals(s);
	}
}

猜你喜欢

转载自blog.csdn.net/qq_42198024/article/details/88136333