在最近Java的学习中,我发现了在日常的编程中会使用好多常见的String的API,现在准备做一个小分类。
1.字符串的比较(equals与equalsIgnorecase)
根据最近所学,我发现两个不同的String输入是不能比较的,由于两个数据不在一个空间,不能相互比较。
public class test { public static void main (String[] args) { String s2=new String ("abc");//数据存在堆空间 String s1="abc";//数据存在常量池 System.out.println(s2==s1);
存在一个String的API,可以直接比较对象里面的内容,不用看是否在一个空间。
package String; import java.util.Scanner; public class test { public static void main (String[] args) { String s2=new String ("abc"); String s1="abc"; System.out.println(s2==s1); String okname ="ID123"; String okpassword ="654123"; Scanner sc=new Scanner(System.in); System.out.println("请输入用户名:"); String name=sc.next(); System.out.println("请输入密码:"); String password=sc.next(); if(okpassword.equals(password)&&okname.equals(name))//比较字符串是否相等 { System.out.println("yes"); } else { System.out.println("no"); } if(okpassword.equalsIgnoreCase(password)&&okname.equalsIgnoreCase(name))//比较字符串是否相等,不用管字母大小写。 { System.out.println("yes"); } } }
2.记录字符串里字符的数量--public int length
public class test1 { public static void main (String[] args) { String name="我爱你中国1314521"; System.out.println(name.length()); } //最后结果输出为12 }
3.获取某个索引地方的字符——public char charAt
用来输出给定位置的字符,案例中输出-爱。
public class test1 { public static void main (String[] args) { String name="我爱你中国1314521"; System.out.println(name.length()); } char c=name.charAt(1); System.out.println(c);//输出 爱 for(int i=0;i<name.length();i++)//遍历字符串里面的每个字符 { char c=name.charAt(i); System.out.println(c); } }
4.把字符串转换成字符数组——public char[] toCharArray()
public class test1 { public static void main (String[] args) { String name="我爱你中国1314521"; System.out.println(name.length()); } char [] c=name.toCharArray(); for(int i=0;i<name.length();i++)//遍历字符串里面的每个字符 { char ch=c[i]; System.out.println(ch);//将字符串转变成字符数组 } }
5.截取内容——public String substring(int beginIndex,int endIndex)
通过这个API来进行截取内容,输入开始索引与结束索引进行截取,包前不包后
从开始截取到末尾-- public String substring (int beginInde)
public class test1 { public static void main (String[] args) { String name="JAVA是最厉害的编程语言"; String rs1=name.substring(0,9); System.out.println(rs1);//输出JAVA是最厉害的 String rs2=name.substring(4,9); System.out.println(rs2);//输出 是最厉害的 } }
6.敏感词替换——public String replate(字符串,替换的内容)
通过这个API可以将字符串里面的特殊符号进行替换
public class test1 { public static void main (String[] args) { String name="JAVA是最厉害的编程语言,JAVA十分挣钱“; String rs= name.replate("JAVA","***"); System.out.println(rs);//输出 ***是最厉害的编程语言,***十分挣钱 } }
7.字符串里面是否包含该符号——public boolean contains(字符串)
通过该API来判断字符串里面是否包含某个字符串
public class test1 { public static void main (String[] args) { String name="JAVA是最厉害的编程语言,JAVA十分挣钱“; String rs= name.replate("JAVA","***"); System.out.println(rs);//输出 ***是最厉害的编程语言,***十分挣钱 System.out.println(name.contains(JAVA));//结果为true。 } }
8.判断字符串是否以某个字符开始——public boolean startsWith(字符串)
public class test1 { public static void main (String[] args) { String name="JAVA是最厉害的编程语言“; System.out.println(name.startsWith("JAVA"));//true System.out.println(name.startsWith("c++"));//falus } }
9.按照某个内容把字符串分割成字符数组后返回——public String[] split(String s)
public class test1 { public static void main (String[] args) { String name="小红,小明,小李“; String [] names=name.split(","); for(int i=0;i<names.length;i++) { System.out.println(names[i]);//以,为分界线,分别输出三个人 } }