String S = "hello " Objcet:是类层次结构的根类,所有类都直接活间接的继承该类
boolean equals(Object obj) ----比较字符串的内容是否相同 boolean equalsIgnoreCase(String str) ---- 比较字符串内容是否相同,忽略大小写 boolean startsWith(String str) ---- 判断字符串对象是否以指定的str开头 boolean endsWitn(String str) ---- 判断字符串对象是否以指定的str结尾
int length() ---- 获取字符串的长度 char charAt(int index) ---- 获取指定索引处的字符 int indexOf(String str) ---- 获取str 在字符串对象中第一次出现的索引 String substring(int start) ---- 从start开始截取字符串 String substring(int start,int end) --- 从s-e 截取,包括s 不包括e
package myTest;
import java.util.Scanner;
/**
* Created by JackFeng on 2020/3/2.
*/
public class StringTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串数据:");
String s = sc.nextLine();
//定义统计变量
int BigCount = 0;
int SmaCount = 0;
int numberCount = 0;
//遍历字符
for (int i = 0; i <s.length() ; i++) {
char ch = s.charAt(i);
if (ch >= 'A' && ch<= 'Z') {
BigCount++;
}else if(ch >= 'a' && ch<= 'z'){
SmaCount++;
}else if (ch>='0' && ch<='9'){
numberCount++;
}else {
System.out.println("该字符"+ch+"非法");
}
}
System.out.println("大写字符"+BigCount);
System.out.println("小写字符"+SmaCount);
System.out.println("数字字符"+numberCount);
}
}
char[ ] toCharArray() ---- 把字符串转换为字符数组 String toLlowerCase() ---- 把字符串转换为小写字符串 String toUpperCase() ---- 把字符串转换为大写字符串 字符串的遍历:
去除字符串两端空格:
按照指定符号分割字符串
package myTest;
import java.util.Scanner;
/**
* Created by JackFeng on 2020/3/2.
*/
/*
* 键盘录入:abc 输出 cba
*
* 反转方法:
* A:把字符串倒着遍历,得到每一个字符拼接成字符串
* B:把字符串转换成字符数组,然后对字符数组进行反转,最后把字符数组转换为字符串
*
* */
public class StringTest1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String s = sc.nextLine();
// 调用方法A
// String result = reverse(s);
//调用方法B
String result = reFan(s);
//输出结果
System.out.println("result:"+result);
}
// 方案A
public static String reverse (String s){
String ss = "";
// 倒着遍历
for (int i = s.length()-1; i >=0 ; i--) {
ss+=s.charAt(i);
}
return ss;
}
// 方案B
public static String reFan( String s){
// 把字符串转换为字符数组
char[] chs = s.toCharArray();
for (int start = 0,end = chs.length-1; start <=end ; start++,end--) {
char temp = chs[start];
chs[start] = chs[end];
chs[end] = temp;
}
// 把字符数组转换为字符串
String ss = new String(chs);
return ss;
}
}
StringBuilder : 可变的字符串,字符串缓冲区类
构造方法:
成员方法:
添加功能:
反转功能:
StringBuilder ------>String
String ------> StringBuilder
package myTest;
import java.util.Scanner;
/**
* Created by JackFeng on 2020/3/2.
*/
/*
* 判断一个字符串是否是对称字符串
*
* 例如 abc 不是 aba abba aaa 是对称字符串
*
* */
public class StringBuilderDemo {
public static void main(String[] args) {
// 键盘录入
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String s = sc.nextLine();
// 方法实现
// 调用方法
boolean b = isDuiChen(s);
System.out.println("b:"+b);
}
public static boolean isDuiChen(String s){
StringBuilder sb = new StringBuilder(s);
sb.reverse();
String result = sb.toString();
return result.equals(s);
}
}