JavaAPI_02

package com.zking.test;

public class StringTest {

    public static void main(String[] args) {
        /**
         * JavaAPI-02 String类
         * 
         * 打开API文档 (了解String类处于哪个包 父类是谁 有什么作用) 1.String类是处于lang包,无需导包
         * 2.String类父类是Object,同时String也是一个常量类,不能被继承
         * 3.String它是一种引用类型(所有的类都是引用类型,而且类的首字母都是大写的) 4.String可以用来定义字符串,其本质就是一个字符数组
         * 5.String一旦定义长度不可更改,一旦更改,字符串存储的内存地址就会发生改变。 String str = "章"; str+="游";
         * 这里会出现2个不同的内存地址 6.String定义字符串的,那么定义方式有哪些? (1)直接定义 String str = "xxx";
         * (2)可以通过String类的构造函数来定义字符串
         * 
         * 
         */
        // String name1 = "阳文广芜湖1111111111111111111";
        // String name2 = new String("阳文广");
        //
        // //1.获取字符串的长度 length()
        // System.out.println(name1.length());
        //
        // //------------------------------------------------
         (1) 转换功能
         String定义的字符串其本质就是一个字符串数组
        // char[] chs = {'我','爱','你'};
        // //可以通过String类提供的构造函数 自动将一个字符串数组转换成字符串
        // String str = new String(chs);
        // System.out.println(str);//字符串
        //
         将一个字符串转换成字符数组
        // String str2 = "唐烨";
         toCharArray将一个字符串转换成字符数组
        // char[] charArray = str2.toCharArray();
        // for (char c : charArray) {
        // System.out.println(c);
        // }
        //
         其实我们的字节数组也是可以自动转成字符串的。
         通过构造函数实现
         48--0 65--A 97--a
        // byte[] bytes = {67,98,99,100};
        // String str3 = new String(bytes);
        // System.out.println(str3);
        //
        // //getBytes将字符串转成字节数组
        // String str4 = "hello";
        // byte[] bytes2 = str4.getBytes();
        // for (int i = 0; i < bytes2.length; i++) {
        // System.out.println((char)bytes2[i]);
        // }
        //
        //
        // // new String(字节数组|字符数组)
        // //toCharArray 转字符数组
        // //getBytes 转字节数组
        //
        //
        // //完成oop中模拟注册
        //
        // //账户必须是6-12为 密码必须是6位 你才能进行正确的注册
        // String username = "admin";
        // String password = "666666";
        // if(username.length() >=6 && username.length() <=12) {
        // if(password.length() == 6) {
        // System.out.println("注册成功");
        // }else {
        // System.out.println("密码不符合要求");
        // }
        // }else {
        // System.out.println("账户不符合要求(6-12位)");
        // }

        // charAt 根据下标查找指定字符
        // String str = "my name is zz";
        // System.out.println(str.charAt(3));

        // 统计一个字符串中a的出现次数
        // String str = "abcayya";
        // //字符串其本质就是字符数组
        // int count= 0;
        // for (int i = 0; i < str.length(); i++) {
        // if(str.charAt(i) == 'a') {
        // count++;
        // }
        // }
        // System.out.println("count = "+count);

        // compareTo 比较(比较字符串的大小)
        // 每个字符串的首字母开始比较 使用每个字符的ASCII值比较
        // 相同就往后比
//        String str1 = "aa";// 97
//        String str2 = "ab";// 98
//        // 如果第一个字符串大于第二个字符串 返回正数(两者之差)
//        // 反之 返回负数(两者之差)
//        // 如果相等 返回0
//        System.out.println(str1.compareTo(str2));
//        
//        //比较:邓言康  邓诗龙的大小
//        String name1 = "邓言康";
//        String name2 = "邓诗龙";
//        System.out.println(name1.compareTo(name2));
//        
//        
        concat  连接   (字符串的拼接)   和+一致
//        String s1 = "yangwenguang";
//        String s2 = "guihua";
//        System.out.println(s1+s2);
//        System.out.println(s1.concat(s2));
//        
        contains 是否包含  true  false
//        String str = "xiewenjianxihuanshuine?";
//        System.out.println(str.contains("xiewenjian"));
//        
        endWith()  判断字符串的结尾是否以指定的字符结尾
        判断一个文件的扩展名是否以.java结尾
//        String fileName = "helloWorld.java";
//        if(fileName.endsWith(".java")) {
//            System.out.println("YES");
//        }
//        
        startsWith
//        if(fileName.startsWith("h")) {
//            System.out.println("YES");
//        }
        
        
//        indexOf  求下标(索引)
//        String str = "唐铨肖鹏伟套你猴子";
//        //提供字符在目标字符串中不存在  返回-1
//        System.out.println(str.indexOf('s'));//-1
//        
        验证邮箱格式
        @ .    123456@qq.com
               zkingzz@sina.cn        
//        String email = "123456@qq.com";
//        if(email.indexOf('@')!=-1 &&
//                email.indexOf('.')!=-1 &&
//                email.indexOf('@') <email.indexOf('.')) {
//            System.out.println("OK");
//        }
        
//        String str = "唐铨肖鹏伟套你猴子";
        查找唐铨的下标
//        System.out.println(str.indexOf("唐铨"));
        
//        根据指定的位置查找字符
        
//        String str = "ashfkjsahkja";
//        //从下标为3的位置处开始查找a出现的位置下标
//        System.out.println(str.indexOf('a', 3));
        
        
//        lastIndexOf()获取指定字符串在目标字符串中最后一次出现的位置
//        String str = "ashfkjsahkja";
//        System.out.println(str.lastIndexOf('a'));
        
        
//        替换  replace
//        String str = "helhloh";
//        System.out.println(str.replace("h", "a"));
        
//        split   分割(提供一个目标字符串,按照特定的规则将该字符串分割成一个字符串数组)
//        String names = "糖业,唐烨,糖烨";
//        String names2 = "a,b,c,d,e";
//        String[] split = names2.split(",");
//        for (String string : split) {
//            System.out.println(string);
//        }
        
//        题目:String str = "asd,12,sdf3,fsgf5";
        
//        截取  substring
//        String str = "alhfkjsahf";
//        //hfk  
//        System.out.println(str.substring(2, 5));
        
//        转换大小写的  toUpperCase  toLowerCase
        
//        String str = "alhfkSJDFjsahf";
//        System.out.println(str.toLowerCase());
//        System.out.println(str.toUpperCase());
        
//        valueOf方法
//        将int转成String
        System.out.println(String.valueOf(123));
        String str = "123";
        System.out.println(Integer.valueOf("123"));
//        Integer.parseInt();
        
        
//        trim  去除空格
        System.out.println("  akashd   ".length());
        System.out.println("  akashd   ".trim().length());
        
        
        /**
         * 总结:
         *         length         长度
         *         substring      截取
         *         trim         空格
         *         compareTo      比较
         *         split        分割
         *         replace        替换
         *         indexOf        下标
         *         lastIndexOf 下标(最后)
         *         toLowerCase    小写
         *         toUpperCase    大小
         *         concat        拼接
         *         contains    包含
         *         valueOf        转换
         *         toCharArray    转字符数组
         *         getBytes    转字节数组
         *         startsWith    以什么开头
         *         endsWith    以什么结尾
         *         charAt        根据下标求字符
         *         
         */
        
//        StringBuffer|StringBuilder
        
        
        
        
        
        

    }

}
 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值