/**
* 需求:模拟登陆,给3次机会,并给提示还有几次
* 用户名和密码都是 admin
*
*
*
* @author flzen
*
*/
public class Demo {
public static void main(String[] args) {
//提示用户输入账号和密码
Scanner sc= new Scanner(System.in);
//判断
for(int x=3;x>0;){
System.out.println("请输入账号:");
String userName =sc.nextLine();
System.out.println("请输入密码:");
String passWord = sc.nextLine();
if(userName.equals("admin") && passWord.equals("admin")){
System.out.println("登陆成功,欢迎您 我的主人");
break;
}else{
System.out.println("你输入的账号或密码错误,你还有"+(--x)+"次机会");
}
}
}
}
/**
* 遍历字符串
*
* @author flzen
*
*/
public class Demo2 {
public static void main(String[] args) {
String s = "fighting";
for(int i =0; i<s.length();i++){
System.out.println(s.charAt(i));//通过索引获取每个字符
}
}
}
/* A:案例演示
* 需求:统计一个字符串中大写字母字符,小写字母字符,数字字符出现的次数,其他字符出现的次数。
* ABCDEabcd123456!@#$%^
* 分析:字符串是有字符组成的,而字符的值都是有范围的,通过范围来判断是否包含该字符
* 如果包含就让计数器变量自增
*/
public class Demo3 {
public static void main(String[] args) {
//提示用户输入一串字符串
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串");
String s = sc.nextLine();
//
int upper =0;
int low =0;
int num =0;
int other =0;
//遍历字符串 得到每个字符
for(int x=0; x<s.length();x++){
if('a'<=s.charAt(x) && s.charAt(x)<='z'){
low++;
}else if('A'<=s.charAt(x) && s.charAt(x)<='Z'){
upper++;
}else if('0'<=s.charAt(x) && s.charAt(x)<='9'){
num++;
}else{
other++;
}
}
System.out.println("大写字母"+upper+"个");
System.out.println("小写字母"+low+"个");
System.out.println("数字"+num+"个");
System.out.println("其他字符"+other+"个");
}
}
/**
* * A:案例演示
* 需求:把一个字符串的首字母转成大写,其余为小写。(只考虑英文大小写字母字符)
* 链式编程:只要保证每次调用完方法返回的是对象,就可以继续调用
*/
public class Demo4 {
public static void main(String[] args) {
String s ="helloword";
String s1 =s.substring(0,1).toUpperCase().concat(s.substring(1).toLowerCase());
System.out.println(s1);
}
}
* A:案例演示
* 需求:把一个字符串的首字母转成大写,其余为小写。(只考虑英文大小写字母字符)
* 链式编程:只要保证每次调用完方法返回的是对象,就可以继续调用
* 把-654321 转换成 -123456 输出
*/
public class Demo4 {
public static void main(String[] args) {
String s ="helloword";
String s1 =s.substring(0,1).toUpperCase().concat(s.substring(1).toLowerCase());
System.out.println(s1);
String s2= "-654321";
String s3 =s2.substring(0,1);//截取符号
String s4 =s2.substring(1);//截取剩下的字符串
char[] arr = s4.toCharArray();
String s5 ="";
for(int x=arr.length-1;x>0;x--){
s5= s5+arr[x];
}
System.out.println(s3.concat(s5));
}
}
package String;
//这是我无意间看到的一道面试题。把-123456 转换成 -654321 输出
public class Demo6 {
public static void main(String[] args) {
StringBuffer sb = new StringBuffer();
sb.append("-123456");//添加元素
String s1= sb.substring(0, 1);//截取负号
String s2 =sb.substring(1);//截取负号后面的内容
StringBuffer sb1 = new StringBuffer(s2); //将字符串转换为字符容器
String s3 = s1+(sb1.reverse());//利用字符容器的反转功能 并拼接字符串
System.out.println(s3);
}
}
/**
* * 需求:把数组中的数据按照指定个格式拼接成一个字符串
*
举例:
int[] arr = {1,2,3};
输出结果:
"[1, 2, 3]"
用StringBuffer的功能实现
*/
public class Demo8 {
public static void main(String[] args) {
int[] arr ={1,2,3};
System.out.println(arrayToString(arr));
}
public static String arrayToString(int[] arr){
//创建字符串缓冲区
StringBuffer sb = new StringBuffer();
sb.append("[");
//遍历数组
for(int x =0;x<arr.length;x++){
if(x==arr.length-1){
sb.append(arr[x]).append("]");
}else{
sb.append(arr[x]).append(",");
}
}
return sb.toString();
}
}
import java.util.Scanner;
//反转
public class Demo9 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要的字符串:");
String s = sc.nextLine();
System.out.println(rev(s));
}
public static String rev(String s){
StringBuffer sb = new StringBuffer(s);
sb.reverse();
return sb.toString();
}
}