Java——JAVAString案例(用户登录、遍历字符串、统计字符次数、拼接字符串、字符串反转)

简介: Java——JAVAString案例(用户登录、遍历字符串、统计字符次数、拼接字符串、字符串反转)!

1. 案例:用户登录

需求:

已知用户名和密码,请用程序实现模拟用户登录,总共有三次机会,登录之后,给出相应的提示

分析:

(1)已知用户名和密码,定义两个字符串表示即可

(2)键盘录入要登陆的用户名和密码,用Scanner实现

(3)拿键盘录入的用户名、密码和已知的用户名、密码进行比较,给出相应的提示。字符串的内容比较,用equals()实现

(4)用循环实现多次机会,这里的次数明确,采用for循环实现,并在登录成功的时候,使用break结束循环

完整代码:

packageString;
importjava.util.Scanner;
publicclassStringDemo2 {
publicstaticvoidmain(String[] args) {
Stringusername="abc";
Stringpassword="123";
for(inti=0; i<3; i++){
Scannersc=newScanner(System.in);
System.out.println("请输入用户名:");
Stringname=sc.nextLine();
System.out.println("请输入密码:");
Stringpsd=sc.nextLine();
if(name.equals(username) &&psd.equals(password)){
System.out.println("登陆成功");
            }else{
if((3-i)==0){
System.out.println("登录失败");
                }else{
System.out.println("你还有"+(3-i)+"次机会");
                }
            }
        }
    }
}


运行结果:

请输入用户名:abc请输入密码:www你还有3次机会请输入用户名:abc请输入密码:sed你还有2次机会请输入用户名:abc请输入密码:123登陆成功


2. 案例:遍历字符串

需求:

键盘录入一个字符串,使用程序实现在控制台遍历该字符串

分析:

(1)键盘录入一个字符串,用Scanner实现

(2)遍历字符串,首先能够获取到字符串中的每一个字符

在这里插入图片描述

(3)遍历字符串,首先能够获取到字符串中的长度

在这里插入图片描述

(4)遍历字符串的通用格式

在这里插入图片描述


完整代码:

packageString;
importjava.util.Scanner;
publicclassString3 {
publicstaticvoidmain(String[] args) {
Scannersc=newScanner(System.in);
System.out.println("请输入一个字符串:");
Stringline=sc.nextLine();
for(inti=0; iSystem.out.println(line.charAt(i));
        }
    }
}


运行结果:

请输入一个字符串:ergegegergegeg


3. 案例:统计字符次数

需求:

键盘录入一个字符串,统计该字符串中大写字母字符、小写字母字符、数字字符出现的次数(不考虑其他字符)

分析:

(1)键盘录入一个字符串,用Scanner实现

(2)要统计三种类型的字符个数,需定义三个统计变量,初始值都为0

(3)遍历字符串,得到每一个字符

(4)判断该字符属于哪种类型,然后对应类型的统计变量+1

假如ch是一个字符:

大写字母:ch>='A'&&ch<='Z'

小写字母:ch>='a' && ch<='z'

数字:ch>='0' && ch<='9'

(5)输出三种类型的字符个数

完整代码:

packageString;
importjava.util.Scanner;
publicclassString4 {
publicstaticvoidmain(String[] args) {
Scannersc=newScanner(System.in);
System.out.println("请输入字符串:");
Stringline=sc.nextLine();
intbigCount=0;
intsmallCount=0;
intnumberCount=0;
for(inti=0; icharch=line.charAt(i);
if (ch>='A'&&ch<='Z'){
bigCount++;
            }elseif(ch>='a'&&ch<='z'){
smallCount++;
            }elseif(ch>='0'&&ch<='9'){
numberCount++;
            }
        }
System.out.println("大写字母:"+bigCount);
System.out.println("小写字母:"+smallCount);
System.out.println("数字:"+numberCount);
    }
}


运行结果:

请输入字符串:789595knjjninIIN大写字母:3小写字母:7数字:6


4. 案例:拼接字符串

需求:

在这里插入图片描述

分析:

(1)定义一个int类型的数组,用静态初始化完成数组元素的初始化

(2)定义一个方法,用于把int数组中的数据按照指定格式拼接成一个字符串返回,返回值类型String,参数列表int[] arr

(3)在方法中遍历数组,按照要求进行拼接

(4)调用方法,用一个变量接受结果

(5)输出结果

完整代码:

packageString;
publicclassString5 {
publicstaticvoidmain(String[] args) {
int[] arr= {1,2,3};
Stringc=reverse(arr);
System.out.println(c);
    }
publicstaticStringreverse(int[] arr){
Strings="";
s+="[";
for (inti=0; iif(i==arr.length-1){
s+=arr[i];
            }else{
s+=arr[i];
s+=", ";
            }
        }
s+="]";
returns;
    }
}


运行结果:

[1, 2, 3]


5. 案例:字符串反转

需求:

定义一个方法,实现字符串反转。键盘录入一个字符串,调用该方法后,在控制台输出结果。

如:键盘录入abc,输出结果cba

分析:

(1)键盘录入一个字符串,用Scanner实现;

(2)定义一个方法,实现字符串反转,返回值类型String,参数String s;

(3)在方法中把字符串看成遍历,然后把每一个得到的字符拼接成一个字符串并返回;

(4)调用方法,用一个变量接受结果;

(5)输出结果

完整代码:

packageString;
importjava.util.Scanner;
publicclassString6 {
publicstaticvoidmain(String[] args) {
Scannersc=newScanner(System.in);
System.out.println("请输入一个字符串:");
Stringline=sc.nextLine();
Strings=reverse(line);
System.out.println(s);
    }
/*明确:返回值类型:String;参数:String s*/publicstaticStringreverse(Strings){
Stringss=" ";
for(inti=s.length()-1; i>=0; i--){
ss+=s.charAt(i);
        }
returnss;
    }
}


运行结果:

请输入一个字符串:abccba


相关文章
|
23天前
|
存储 安全 Java
Java零基础-字符串详解
【10月更文挑战第18天】Java零基础教学篇,手把手实践教学!
98 60
|
13天前
|
缓存 算法 Java
本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制
在现代软件开发中,性能优化至关重要。本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制。通过调整垃圾回收器参数、优化堆大小与布局、使用对象池和缓存技术,开发者可显著提升应用性能和稳定性。
35 6
|
16天前
|
存储 Java 开发者
在 Java 中,如何遍历一个 Set 集合?
【10月更文挑战第30天】开发者可以根据具体的需求和代码风格选择合适的遍历方式。增强for循环简洁直观,适用于大多数简单的遍历场景;迭代器则更加灵活,可在遍历过程中进行更多复杂的操作;而Lambda表达式和`forEach`方法则提供了一种更简洁的函数式编程风格的遍历方式。
|
26天前
|
Java 程序员 编译器
Java|如何正确地在遍历 List 时删除元素
从源码分析如何正确地在遍历 List 时删除元素。为什么有的写法会导致异常,而另一些不会。
22 3
|
1月前
|
Java 数据库
案例一:去掉数据库某列中的所有英文,利用java正则表达式去做,核心:去掉字符串中的英文
这篇文章介绍了如何使用Java正则表达式从数据库某列中去除所有英文字符。
49 15
|
1月前
|
前端开发 小程序 Java
java基础:map遍历使用;java使用 Patten 和Matches 进行正则匹配;后端传到前端展示图片三种情况,并保存到手机
这篇文章介绍了Java中Map的遍历方法、使用Pattern和matches进行正则表达式匹配,以及后端向前端传输图片并保存到手机的三种情况。
20 1
|
Java
Java中需要注意的一些案例
Java中需要注意的一些案例
119 0
|
5天前
|
Java 开发者
Java多线程编程中的常见误区与最佳实践####
本文深入剖析了Java多线程编程中开发者常遇到的几个典型误区,如对`start()`与`run()`方法的混淆使用、忽视线程安全问题、错误处理未同步的共享变量等,并针对这些问题提出了具体的解决方案和最佳实践。通过实例代码对比,直观展示了正确与错误的实现方式,旨在帮助读者构建更加健壮、高效的多线程应用程序。 ####
|
4天前
|
安全 Java 开发者
Java 多线程并发控制:深入理解与实战应用
《Java多线程并发控制:深入理解与实战应用》一书详细解析了Java多线程编程的核心概念、并发控制技术及其实战技巧,适合Java开发者深入学习和实践参考。