继续学习String的方法
一、 字符串的遍历
1.CharAt(int index):
用于字符串的遍历,返回索引对应的字符
package StringDemo;
import java.util.*;
public class StringTrave {
//需求:键盘录入一个字符串,使用程序进行字符串的遍历
/*思路:
1.键盘录入一个字符串,用Scanner实现
2.遍历字符串,首先获取字符串的每一个字符
public char CharAt(int index):返回指定索引处的char值,字符串的索引也是从0开始
3.遍历字符串,其次要获取字符串的长度
public int length():返回字符串的长度
4.遍历打印
*/
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入字符串");
String s=sc.nextLine();
int len=s.length();
for(int i=0;i<len;i++)
{
char c1=s.charAt(i);
System.out.println(c1);
}
}
}
2.char[] tocharArray():
package StringDemo;
import java.util.*;
public class StringTrave2 {
public static void main(String[] args) {
//键盘录入:
Scanner sc=new Scanner(System.in);
System.out.println("请输入字符串");
String s=sc.nextLine();
//将字符串拆分成字符数组:
char[] chars = s.toCharArray();
//遍历数组
for (int i = 0; i < chars.length; i++) {
System.out.println(chars[i]);
}
}
}
二、字符串截取
1.substring(int beginIndex)和substring(int beginIndex,int endindex)
package StringDemo;
import java.util.*;
public class PhoneNumber {
//需求:以字符串的形势从键盘接收一个手机号,并将中间四位号码屏蔽
/*
1.从键盘接收一个手机号,Scanner实现
2.使用数组形式存储手机号
3.取出前三位和后四位
4.中间部分改为*
使用String substring(int beginIndex)
向后截取,一直截取到末尾
String substring(int beginIndex,int endIndex)
从第一个数字位置开始截取,到后一个数字的位置,包含头不包含尾
*/
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入:");
String s=sc.nextLine();
String substring1 = s.substring(0, 3);
String substring2= s.substring(7);
System.out.println(substring1+"****"+substring2);
}
}
三、替换
1.replace(CharSequence target, CharSequence replacement)
package StringDemo;
import java.util.*;
public class ChangeWord {
//需求:键盘录入一个字符串,如果字符串中出现了tmd,用***代替
/*
1.键盘录入一个字符串
2.替换
String replace(CharSequence target, CharSequence replacement)
将当前字符串中的target(被替换的旧值),使用replacement(替换的新值)进行替换,返回新的字符串
*/
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入:");
String s=sc.nextLine();
//敏感词替换
String res = s.replace("TMD", "***");
System.out.println(res);
}
}
四、字符串切割
split(String regex)`
package StringDemo;
import domain.Student;
import java.util.Scanner;
public class StudentTest {
/*
需求:以字符串的形式从键盘输入学生信息,例如”张三,23”
从该字符串中切割出有效数据,封装为Student学生对象
思路:
1.编写Student类,定义好私有变量及成员方法
2.键盘录入学生一个字符串
3.根据逗号分割字符串,得到(张三)(23)
String[] split(String regex):根据传入的字符串作为规则进行切割
将切割后的内容存入字符串数组中,并将字符串数组返回
4.从得到的字符串数组中取出元素内容,通过Student类的有参构造函数蜂虎在那个位对象
5.调用对象get的方法,取出数据并打印
*/
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入学生信息:");
String stuInfo=sc.nextLine();
String[] split = stuInfo.split(",");
//ystem.out.println(split[0]);
// System.out.println(split[1]);
//将字符串数组封装
Student stu=new Student(split[0],split[1]);
System.out.println(stu.getName()+stu.getAge());
}
}