package com.shujia.day11;
/*
String类的获取功能
int length() 获取字符串中的字符个数
char charAt(int index) 根据索引获取对应的字符
int indexOf(int ch) 传入字符对应的ascii码值,返回字符从左向右第一次找到的对应的位置索引,若找不到就返回-1
int indexOf(String str) 传入小字符串,在大字符串中找这个小字符串,若找到,返回小字符串中第一个字符所在的索引位置,若找不到就返回-1
int indexOf(int ch,int fromIndex) 从fromIndex索引开始找该字符,若找到了该字符,返回该字符在整个字符串中的位置索引
int indexOf(String str,int fromIndex) 从fromIndex索引开始找该字符串,若找到了该字符串,返回该字符串的第一个字符在整个大字符串中的位置索引,若找不到就返回-1
String substring(int start) 从指定索引位置开始截取字符串,返回截取后的字符串
String substring(int start,int end) 截取从start开始到end结束之间的字符串,返回截取后的字符串 [start, end)
*/
public class StringDemo5 {
public static void main(String[] args) {
String s1 = "hello world!";
//int length() 获取字符串中的字符个数
int length = s1.length();
System.out.println(length);
//一个字符串可以被看成一个字符数组,索引是从0开始的
//char charAt(int index) 根据索引获取对应的字符
System.out.println(s1.charAt(6));
//一般情况下,在java中和索引有关的操作,若提供不存在的索引,一般都会直接报错
// System.out.println(s1.charAt(20)); // StringIndexOutOfBoundsException
//int indexOf(int ch) 传入字符对应的ascii码值,返回字符从左向右第一次找到的对应的位置索引
System.out.println(s1.indexOf(119));
// System.out.println(s1.indexOf(126)); // -1 若找不到就返回-1
//int indexOf(String str) 传入小字符串,在大字符串中找这个小字符串,若找到,返回小字符串中第一个字符所在的索引位置
System.out.println(s1.indexOf("o wo"));
System.out.println(s1.indexOf("shujia")); // -1
//int indexOf(int ch, int fromIndex) 从fromIndex索引开始找该字符,若找到了该字符,返回该字符在整个字符串中的位置索引
String s2 = "hello wojavarld nijavahao java";
System.out.println(s2.indexOf(111, 12));
//int indexOf(String str,int fromIndex) 从fromIndex索引开始找该字符串,若找到了该字符串,返回该字符串的第一个字符在整个大字符串中的位置索引
System.out.println(s2.indexOf("java",22)); // 26
//String substring(int start) 从指定索引位置开始截取字符串,返回截取后的字符串
String s3 = "今天是疯狂星期四,v我50可好?";
String s4 = s3.substring(9);
System.out.println(s4);
//String substring(int start,int end) 截取从start开始到end结束之间的字符串,返回截取后的字符串 [start, end)
String s5 = s3.substring(5, 8);
System.out.println(s5);
}
}