【Java String字符串】

字符串的比较

  • boolean equals方法(要比较的字符串) 完全一样结果才是true,否则为false
String s1 = new String("abc");
String s2 = "abc";
System.out.println(s1 == s2); //false
boolean result1 = s1.equals(s2);
System.out.println(result1); //true
  • boolean equalslgnoreCase(要比较的字符串) 忽大小写的比较
String s1 = new String("abc");
String s2 = "ABC";
boolean result2 = s1.equalsiIgnoreCase(s2);
System.out.println(result2); //true

遍历字符串

Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串");
String str = sc.next();
for(int i = 0;i<str.length;i++){
  char c = str.charAt(i);
  System.out.println(c);
}

案例一、统计字符次数

Scanner sc =new Scanner(System.in);
System.out.println("请输入一个字符串");
String str = sc.next();

int bigCount = 0;
int smallCount = 0;
int numberCount = 0;
for(int i =0;i<str.length();i++){
  char c =str.chatAt(i);
  if(c>='a' && c<='z'){
     smallCount++;
  }else if(c>='A' && c<='Z'){
     bigCount++;
  }else if(c>='0' && c<='9'){
     numberCount++;
  }
}
System.out.println("小写字母有"+smallCount);
System.out.println("大写字母有"+bigCount);
System.out.println("数字有"+numberCount);

案例二、拼接字符串

Public static String arrToString(int[] arr){
   if(arr == null){
      return "";
   }
   if(arr.length() == 0){
      return "[]";
   }
   String result ="[";
   for(int i =0;i<arr.length();i++){
     if(i==arr.length() -1){
        result = result + arr[i]
     }else{
        result=result + arr[i] + ", ";  
     }        
    }
   result = result +"]";
   return result;
}

字符串反转

Public static String reverser(String str){
    String result = ""
    for(int i =str.length()-1;i>=0;i--){
       char c = charAt(i);
       result = result + c;
    }
    return result;
}

金额转换

public static String getCapitalNumber(int number){
   String[] arr ={"零","壹","贰","叁","肆","伍","陆","柒","捌","玖"};
   return arr[number];
}
public static String moneyConvert(int money){

    String moneyStr = "";
    if(money >=0 && money <=9999999){
       break;
    }else{
      System.out.println("金额无效");
    }
    while(true){
       int ge = money * 10;
       String capitalNumber =getCapitalNumber(ge);
       moneyStr = capitalNumber + moneyStr;
       money = money /10;
       if(money == 0){
          break;
       }
    }
    int count = 7-moneyStr.length();
    for(int i =0;i<count;i++){
       moneyStr = "零" + moneyStr;
    }
    String [] arr ={"佰","拾","万","仟","佰","拾","元"};
    String result ="";
    for(int i=0;i<moneyStr.length();i++){
       char c = moneyStr.charAt(i);
       result = result + c +arr[i];
    }
}

String Builder

可以高效的拼接字符串,还可以将容器内的内容反转

//1.创建对象
StringBuilder sb = new StringBuilder();

//2.添加元素
sb.append(1);
sb.append(2.3);

//3.反转
sb.reverse();

//4.获取长度
sb.length();

//最后把StringBuilder 变回 String
String str = sb.toString();

对称字符串

public static void main(String[] args){
   Scanner sc = new Scanner(System.in);
   System.out.println("请输入一个字符串");
   String str = sc.next();

   StringBuilder sb = new StringBuilder();
   sb.append(str);
   sb.reverse();
   String result = sb.toString();

   if(str.equals(result)){
      System.out.println("对称");
   }else{
      System.out.println("不对称");
   }
}

StringJoiner

可以高效,方便的拼接字符串,在拼接的时候,可以指定间隔符号,开始符号,结束符号

public static void main(String[] args){
   StringJoiner sj = new StringJoiner(", ","[","]");
   sj.add("aaa");
   sj.add("bbb");
   sj.add("ccc");
   
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值