目录
需求:键盘录入一个字符串,使用程序实现在控制台遍历该字符串
思路:
1、键盘录入一个字符串,用 Scanner 实现
2、遍历字符串,首先要能够获取到字符串中的每一个字符
public char charAt(int index):返回指定索引处的char值,字符串的索引也是从0开始的
3、遍历字符串,其次要能够获取到字符串的长度
public int length():返回此字符串的长度
数组的长度:数组名.length
字符串的长度:字符串对象.length()
4、遍历字符串的通用格式
代码实现:
- public class StringTest02 {
- public static void main(String[] args) {
- //键盘录入一个字符串,用 Scanner 实现
- Scanner sc = new Scanner(System.in);
- System.out.println("请输入一个字符串:");
- String line = sc.nextLine();
- for(int i=0; i
- System.out.println(line.charAt(i));
- }
- }
- }
二、统计字符次数案例
需求:键盘录入一个字符串,统计该字符串中大写字母字符,小写字母字符,数字字符出现的次数(不考虑其他字符)
思路:
1、键盘录入一个字符串,用 Scanner 实现
2、要统计三种类型的字符个数,需定义三个统计变量,初始值都为0
3、遍历字符串,得到每一个字符
4、判断该字符属于哪种类型,然后对应类型的统计变量+1
假如ch是一个字符,我要判断它属于大写字母,小写字母,还是数字,直接判断该字符是否在对应的范围即可
大写字母:ch>='A' && ch<='Z'
小写字母: ch>='a' && ch<='z'
数字: ch>='0' && ch<='9'
5、输出三种类型的字符个数
代码实现:
- public class StringTest03 {
- public static void main(String[] args) {
- //键盘录入一个字符串,用 Scanner 实现
- Scanner sc = new Scanner(System.in);
- System.out.println("请输入一个字符串:");
- String line = sc.nextLine();
- //要统计三种类型的字符个数,需定义三个统计变量,初始值都为0
- int bigCount = 0;
- int smallCount = 0;
- int numberCount = 0;
- //遍历字符串,得到每一个字符
- for(int i=0; i
- char ch = line.charAt(i);
- //判断该字符属于哪种类型,然后对应类型的统计变量+1
- if(ch>='A' && ch<='Z') {
- bigCount++;
- } else if(ch>='a' && ch<='z') {
- smallCount++;
- } else if(ch>='0' && ch<='9') {
- numberCount++;
- }
- }
- //输出三种类型的字符个数
- System.out.println("大写字母:" + bigCount + "个");
- System.out.println("小写字母:" + smallCount + "个");
- System.out.println("数字:" + numberCount + "个");
- }
- }
三、字符串拼接案例
需求:定义一个方法,把int数组中的数据按照指定的格式拼接成一个字符串返回,调用该方法,并在控制台输出结果。例如,数组int[] arr = {1,2,3};,执行方法后的输出结果为:[1,2,3]
思路:
1、定义一个 int 类型的数组,用静态初始化完成数组元素的初始化
2、定义一个方法,用于把 int 数组中的数据按照指定格式拼接成一个字符串返回。
返回值类型 String,参数列表 int[] arr
3、在方法中遍历数组,按照要求进行拼接
4、调用方法,用一个变量接收结果
5、输出结果
代码实现:
- public class StringTest04 {
- public static void main(String[] args) {
- //定义一个 int 类型的数组,用静态初始化完成数组元素的初始化
- int[] arr = {1, 2, 3};
- //调用方法,用一个变量接收结果
- String s = arrayToString(arr);
- //输出结果
- System.out.println("s:" + s);
- }
- //定义一个方法,用于把 int 数组中的数据按照指定格式拼接成一个字符串返回
- /*
- 两个明确:
- 返回值类型:String
- 参数:int[] arr
- */
- public static String arrayToString(int[] arr) {
- //在方法中遍历数组,按照要求进行拼接
- String s = "";
- s += "[";
- for(int i=0; i
- if(i==arr.length-1) {
- s += arr[i];
- } else {
- s += arr[i];
- s += ", ";
- }
- }
- s += "]";
- return s;
- }
- }
四、字符串反转案例
需求:定义一个方法,实现字符串反转。键盘录入一个字符串,调用该方法后,在控制台输出结果
例如,键盘录入abc,输出结果cba
思路:
1、键盘录入一个字符串,用 Scanner 实现
2、定义一个方法,实现字符串反转。返回值类型 String,参数 String s
3、在方法中把字符串倒着遍历,然后把每一个得到的字符拼接成一个字符串并返回
4、调用方法,用一个变量接收结果
5、输出结果
代码实现:
- public class StringTest05 {
- public static void main(String[] args) {
- //键盘录入一个字符串,用 Scanner 实现
- Scanner sc = new Scanner(System.in);
- System.out.println("请输入一个字符串:");
- String line = sc.nextLine();
- //调用方法,用一个变量接收结果
- String s = reverse(line);
- //输出结果
- System.out.println("s:" + s);
- }
- //定义一个方法,实现字符串反转
- /*
- 两个明确:
- 返回值类型:String
- 参数:String s
- */
- public static String reverse(String s) {
- //在方法中把字符串倒着遍历,然后把每一个得到的字符拼接成一个字符串并返回
- String ss = "";
- for(int i=s.length()-1; i>=0; i--) {
- ss += s.charAt(i);
- }
- return ss;
- }
- }
五、帮助文档查看String常用方法
方法名 说明 public boolean equals(Object anObject) 比较字符串的内容,严格区分大小写(用户名和密码) public char charAt(int index) 返回执行索引处的char值 public int length() 返回此字符串的长度
-
相关阅读:
用 Python 编写安卓 APK之helloworld(基于BeeWare)
个人财务预算系统BudgetBee
Lambda表达式和匿名内部类的区别
【网络安全】——逻辑漏洞之短信轰炸漏洞
Spring boot使用ProGuard实现代码混淆
Spring AOP
C# Winform DPI自适应方案
Java HashMap源码学习
Apache Spark 的基本概念和在大数据分析中的应用
探索在Apache SeaTunnel上使用Hudi连接器,高效管理大数据的技术
-
原文地址:https://blog.csdn.net/m0_61961937/article/details/126535680