zoukankan      html  css  js  c++  java
  • 常用类-String

    java.lang.String
      常用的构造函数:
        String()
        String(char[] value) : String str = new String({'j','a','v','a'});
        String(String original):String str = new String("java");
      字符串中常用的方法:
        1.length():获取字符串的长度
        2.toUpperCase():将字符串转换成大写
        3.toLowerCase():将字符串转换成小写
        4.indexOf():获取指定字符串在字符串中出现的下标位置(第一个字符的位置),如果不存在返回-1
        5.lastIndexOf("z"):获取指定字符串最后一个字符的位置 ,如果不存在返回-1
        6.charAt():获取指定下标的字符(下标从0开始)
        7.substring(begin, end):字符串截取包含起始位置,不包含结束位置
        8.substring(begin):字符串截取,从指定的起始位置截取到最后
        9.contains():判断是否包含指定字符串,包含返回true,否则返回false
        10.equals():比较两个字符串内容是否相等
        11.equalsIgnoreCase():忽略大小写比较两个字符串内容是否相等
        12.startsWith():是否以指定字符串开头
        13.endsWith():是否以指定字符串结尾:

    public class StringDemo {
        public static void main(String[] args) {
            String str1=new String("bjsxt");
            String str2=new String("bjsxt");
            System.out.println(str1==str2);//false
            System.out.println(str1.equals(str2));//true
            
            String str3="bjsxt";
            String str4=new String("bjsxt");
            System.out.println(str3==str4);//false
            System.out.println(str3.equals(str4));//true
            
            String str5="bjsxt";
            String str6="bjsxt";
            System.out.println(str5==str6);//ture
            System.out.println(str5.equals(str6));//true
            
            
        }
    }
    public class StringDemo2 {
        public static void main(String[] args) {
            String str="欢迎来到zzsxt进行学习,zzsxt!";
            System.out.println("获取字符串长度的方法:"+str.length());//获取数组的长度用的是数组名.length
            System.out.println("转大写:"+str.toUpperCase());//将字符串转换成大写
            System.out.println("转小写:"+str.toLowerCase());//将字符串转换成小写
            System.out.println("获取指定下标的字符:"+str.charAt(3));//获取指定下标的字符(下标从0开始)
            System.out.println("获取指定字符在字符串中出现的下标位置(第一个字符的位置):"+str.indexOf("a"));//
            System.out.println("获取指定字符在字符串中出现的下标位置(最后一个字符的位置):"+str.lastIndexOf("z"));//
            System.out.println("截取字符串:"+str.substring(2, 5));//字符串截取包含起始位置,不包含结束位置
            System.out.println("截取字符串:"+str.substring(2));//字符串截取,从指定的起始位置截取到最后
            System.out.println("判断是否包含指定字符串:"+str.contains("z"));
            String str2="zzsxt";
            String str3="ZZsxt";
            System.out.println("比较两个字符串内容是否相等:"+str2.equals(str3));
            System.out.println("忽略大小写比较两个字符串内容是否相等:"+str2.equalsIgnoreCase(str3));
    //        System.out.println(str2.toUpperCase().equals(str3.toUpperCase()));//将字符串统一转换为大写或小写在进行比较
            System.out.println("是否以指定字符串开头:"+str.startsWith("zzsxt"));
            System.out.println("是否以指定字符串结尾:"+str.endsWith("zzsxt!"));
            
            
        }
    }

    字符串常用方法2:
      trim():去掉字符串中前后空格
      concat(str):连接字符串 可以使用"+"替代
      String[] split(String regex):按照指定字符串进行分割,分割后子字符保存到数组返回
      replace(char oldChar, char newChar):返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的

    public class StringDemo3 {
        public static void main(String[] args) {
            String str=" hello  world ";
            String str2="zzsxt";
            str=str.trim();
            System.out.println(str);
    //        System.out.println(str.concat(str2));
            System.out.println(str+str2);
            String str3="窗前明月光,疑是地上霜.举头望明月,低头思故乡";
            String[] strs = str3.split(",");
            for (String string : strs) {
                System.out.println(string);
            }
            str3=str3.replace('.', ',');
            System.out.println(str3);
        }
    }

    一个简单的注册演示

    public class Register {
        public static boolean verity(String name,String password,String repassword){
            String message="";
            boolean isVerity,isName,isPassword,isRepassword;
            if(name.length()>3){
                isName=true;
            }else{
                message+="用户名长度大于3位!";//message=message+"用户名长度大于3位!";
                isName=false;
            }
            if(password.length()>6){
                isPassword=true;
            }else{
                message+="密码的长度大于6位!";
                isPassword=false;
            }
            if(password.equals(repassword)){
                isRepassword=true;
            }else{
                message+="两次输入的密码不相同!";
                isRepassword=false;
            }
            isVerity=isName&&isPassword&&isRepassword;
            System.out.println(message);
            return isVerity;
        }
        
        public static void main(String[] args) {
            System.out.println("--------注册系统--------");
            boolean isVerify=false;
            do{
                Scanner input = new Scanner(System.in);
                System.out.println("请输入用户名:");
                String name =input.next();
                System.out.println("请输入密码:");
                String password =input.next();
                System.out.println("请输入重复密码:");
                String repassword =input.next();
                isVerify = verity(name,password,repassword);
            }while(!isVerify);
            System.out.println("注册成功!请牢记你的用户名和密码!");
        }
    }

    String

    public class TestString {
        public static void main(String[] args) {
            String str="abc";
            //返回以毫秒为单位的当前时间(获取当前时间距元年的总毫秒数)
            long start = System.currentTimeMillis();
            for(int i=0;i<10000;i++){
                str+=i;
            }
            long end = System.currentTimeMillis();
            System.out.println("总耗时:"+(end-start));
        }
    }


    String:不可变的字符串
    StringBuffer:线程安全的可变字符序列
      构造函数:
        StringBuffer():
        StringBuffer(String str):
      常用方法:
        sb.append(str):将指定str字符串追加到sb后边
        charAt(int index) : 返回此序列中指定索引处的 char 值。
        indexOf(String str):返回第一次出现的指定子字符串在该字符串中的索引。
        lastIndexOf(String str):返回最右边出现的指定子字符串在此字符串中的索引。
        replace(int start, int end, String str):使用给定 String 中的字符替换此序列的子字符串中的字符。
            包含start位置,但不包含end位置-->[start,end)
        reverse():反转

    public class TestStringBuffer {
        public static void main(String[] args) {
            StringBuffer sb=new StringBuffer("abc");
            sb.append("edfabc");
            System.out.println(sb.charAt(3));
            System.out.println(sb.indexOf("d"));
            System.out.println(sb.lastIndexOf("a"));
            //sb="abcedfabc"
            System.out.println(sb.replace(2, 4, "hello"));
            System.out.println(sb);
            sb.reverse();//反转
            System.out.println(sb);
            //返回以毫秒为单位的当前时间(获取当前时间距元年的总毫秒数)
            long start = System.currentTimeMillis();
            for(int i=0;i<10000;i++){
                sb.append(i);
            }
            long end = System.currentTimeMillis();
            System.out.println("总耗时:"+(end-start));
            
        }
    }

    String:不可变的字符串
    StringBuffer:线程安全的可变字符序列(synchronized),线程安全(在多线程中使用),效率低
    StringBuilder:一个可变的字符序列。此类提供一个与 StringBuffer 兼容的 API,非线程安全,效率高
      交通信号灯:
        同步(存在红绿灯)
        不同步(没有红绿灯)
      构造函数:
        StringBuffer():
        StringBuffer(String str):
      常用方法:
        sb.append(str)***:将指定str字符串追加到sb后边
        charAt(int index) : 返回此序列中指定索引处的 char 值。
        indexOf(String str):返回第一次出现的指定子字符串在该字符串中的索引。
        lastIndexOf(String str):返回最右边出现的指定子字符串在此字符串中的索引。
        replace(int start, int end, String str):使用给定 String 中的字符替换此序列的子字符串中的字符。
            包含start位置,但不包含end位置-->[start,end)
        reverse():反转

    public class TestStringBuilder {
        public static void main(String[] args) {
            StringBuilder sb=new StringBuilder("abc");
            sb.append("edfabc");
            System.out.println(sb.charAt(3));
            System.out.println(sb.indexOf("d"));
            System.out.println(sb.lastIndexOf("a"));
            //sb="abcedfabc"
            System.out.println(sb.replace(2, 4, "hello"));
            System.out.println(sb);
            sb.reverse();//反转
            System.out.println(sb);
            //返回以毫秒为单位的当前时间(获取当前时间距元年的总毫秒数)
            long start = System.currentTimeMillis();
            for(int i=0;i<10000;i++){
                sb.append(i);
            }
            long end = System.currentTimeMillis();
            System.out.println("总耗时:"+(end-start));
        }
    }
  • 相关阅读:
    20145206 《信息安全系统设计基础》第3周学习总结
    20145206 《信息安全系统设计基础》第2周学习总结
    Alpha 冲刺 (3/10)
    Alpha 冲刺 (2/10)
    Alpha 冲刺 (1/10)
    福大软工 · 第七次作业
    福大软工 · 第八次作业(课堂实战)- 项目UML设计(团队)
    福大软工1816 · 第六次作业
    福大软工1816 · 第五次作业
    福大软工1816 · 第四次作业
  • 原文地址:https://www.cnblogs.com/fwdsz/p/6753405.html
Copyright © 2011-2022 走看看