希望能通过这种方式督促自己学习,每天完成一点,把基础知识捋一遍。
String类的方法
String类的判断功能:
boolean equals(Object obj);//比较俩个字符串内容是否相等
boolean equalsIgnoreCase(String str);//比较俩个字符串内容是否相等,忽略大小写
boolean startsWith(String str);//判断字符串中是否以指定的str开头
boolean endsWith(String str);//判断字符串中是否以指定的str结尾
String类的获取功能:
int length();//获取字符串的长度
char charAt(int index);//获取指定索引处的字符
int indexOf(String str);//获取str在字符串对象中第一次出现的索引
String substring(int start);//从start开始截取字符串
String substring(int start,int end);//从start开始到end结束截取字符串
eg:统计字符串中大写字母字符,小写字母字符,数字出现的次数
import java.util.Scanner;
public class Stringdemo {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个字符串");
String str=sc.nextLine();
int bigchar=0;
int smallchar=0;
int number=0;
for(int i=0;i<str.length();i++) {
char ch=str.charAt(i);
if(ch>='A'&&ch<='Z') {
bigchar++;
}else if(ch>='a'&&ch<='z') {
smallchar++;
}else if(ch>='0'&&ch<='9') {
number++;
}else {
System.out.println("该字符"+ch+"非法");
}
}
System.out.println("大写字母"+bigchar+"个");
System.out.println("小写字母"+smallchar+"个");
System.out.println("数字"+number+"个");
}
}
String类的转换功能:
char[] toCharArray();//字符串转换成字符数据
String toLowerCase();//把字符串转换成小写字符串
String toUpperCase();//把字符串转换成大写字符串
String的其他功能
String trim();//去除字符串俩端的空格
String[] split(String str);//按照指定符号分割字符串
String str="aa,bb,cc";
String[] array=str.split(",");
for(int i=0;i<array.length;i++)
System.out.println(array[i]);
eg:数组元素按照格式输出
public class Stringdemo {
public static void main(String[] args) {
int []arr= {1,2,3};
String str="";
str+="[";
for(int i=0;i<arr.length;i++) {
if(i==arr.length-1) {
str+=arr[i];
}else {
str+=arr[i];
str+=",";
}
}
str+="]";
System.out.println(str);
}
}
eg:实现字符串翻转
方法一:倒着遍历字符串,把得到的字符拼接成字符串。
public class Stringdemo {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("输入字符串");
String str=sc.nextLine();
System.out.println(reverse(str));
}
public static String reverse(String str) {
String ss="";
for(int i=str.length()-1;i>=0;i--) {
ss+=str.charAt(i);
}
return ss;
}
}
方法二:把字符串转化成字符数组,然后对字符数组反转。
public static String reverse(String str) {
//把字符串转换成字符数组
char[] chs=str.toCharArray();
for(int start=0,end=str.length()-1;start<=end;start++,end--) {
char temp=chs[start];
chs[start]=chs[end];
chs[end]=temp;
}
//最后在字符数组中转化成字符串
String ss=new String(chs);
return ss;
}