String的杂七杂八方法

复制代码
import java.util.Scanner;

public class Test {
    static void main1(String[] args) {
        String a = "abcde";
        String str = new String("abcdef");
        char[] arr = {'a', 'b', 'c', 'd'};
        System.out.println(a);
        System.out.println(str);
        System.out.println(arr);
        //equals
        System.out.println(str.equals(a));//看的是内容是否一致
        System.out.println(str == a);//看的是地址是否一致
        //compareto比较字符大小
        System.out.println(str.compareTo(a));
        //忽略大小写
        String str1 = "abcDeF";
        System.out.println(str.compareToIgnoreCase(str1));
        //挨个输出charAt
        String b = "abvklaxl";
        for (int i = 0; i < b.length(); i++) {
            System.out.println(b.charAt(i));

        }
        System.out.println(b.charAt(b.length() - 1));//里面是下标
        int index = b.indexOf('a');
        System.out.println(index);//从零开始找
        int inext = b.indexOf("bv");
        System.out.println(inext);//
        int indext1 = b.indexOf("vk", 2);
        System.out.println(indext1);
        int index3 = b.indexOf("ab", 3);
        System.out.println(index3);
        int index4 = b.lastIndexOf("bv", 2);
        System.out.println(index4);
        //大写变小写
        String str2 = "abcde";
        System.out.println(str2.toUpperCase());
        String str3 = "ABCDEFH";
        System.out.println(str3.toLowerCase());
        String s3 = "Hel汉字lo9";
        System.out.println(s3.toLowerCase());//挑大写的变成小写
        //value不懂
        String s = String.valueOf(13456);
        System.out.println(s + 1);
        //好吧这个忘记了,转换的是还是数字类型吗
        //替换
        String n = "sjgoixsjeddsjjsjseeesx";
        String x = n.replace('e', 'b');
        System.out.println(x);
        String x1 = n.replace("sj", "qu");
        System.out.println(x1);
        String x2 = n.replaceAll("sjg", "s");
        System.out.println(x2);
        String x3 = n.replaceFirst("sjg", "s");
        System.out.println(x3);
        //分割断点
        String b2 = "hello&world&你好@世界";
        String[] arr1 = b2.split("&|@");
        for (int i = 0; i < arr1.length; i++) {
            System.out.println(arr1[i]);
        }
        //注意//当一个/
        String b3 = "sjin\\hiozn\\sjiow8lxins*\\sd";
        String[] arr2 = b3.split("\\\\");
        for (int i = 0; i < arr2.length; i++) {
            System.out.println(arr2[i]);


        }
        //取范围内的字符串
        String b4 = "abcdef";
        String n2 = b4.substring(2, 4);//[)
        System.out.println(n2);
        //trim去除左右两边空格
        String b5 = "   ahsi   ioseif   ";
        System.out.println(b5);
        System.out.println(b5.trim());

    }

    static void main2(String[] args) {
        String a = "abcde";
        String s = "abcd";

        final char[] array = {'a', 'b', 'c'};
        array[0] = 'g';
        System.out.println(array);
        //修改数组某个下标的
        StringBuilder stringBuilder = new StringBuilder();
        stringBuilder.append("hello");
        stringBuilder.append(" world");
        String ret = stringBuilder.toString();
        System.out.println(ret);
        //apend()
        StringBuffer stringBuffer = new StringBuffer();
        stringBuffer.append("hello");
        stringBuffer.append(" world");
        System.out.println(stringBuffer.toString());
        StringBuffer c = new StringBuffer(23);
        c.append(98);
        System.out.println(c.toString());


        StringBuffer sbf = new StringBuffer("");
        for (int i = 0; i < 10; ++i) {
            sbf.append(i);
            System.out.println(sbf.toString());
        }

    }


    //判断是不是回文,eg  sUHd^fghj&hgf&dHUs
    //先变小写,只判断数字和字母
    private boolean isNumberAndCharacter(char ch) {
        if (Character.isDigit(ch) || Character.isLetter(ch)) {
            return true;
        }
        return false;
    }

    public boolean ishuiwen(String s) {
        s = s.toLowerCase();
        int left = 0;
        int right = s.length() - 1;
        while (left < right) {
            while (left < right && !isNumberAndCharacter(s.charAt(left))) {
                left++;
            }
            while (right > left && !isNumberAndCharacter(s.charAt(right))) {
                right--;
            }
            if (left == right) {
                return true;
            }
        }
        return false;
    }

   /* static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        String a=ishuiwen(sc);

    System.out.println(a);}*/

    public int iswordcount(String s) {
        int count = 0;
        for (int i = 0; i < s.length(); i++) {
            if (s.charAt(i) == ' ') {
                count++;
            }
        }
        return count;
    }

    public int iswordcount1(String s) {
        String[] ss = s.split(" ");
        int count = 0;
        for (int i = 0; i < ss.length; i++) {
            count++;
        }
        return count;
    }

    public String toLowerCase(String s) {


        StringBuilder stringBuilder = new StringBuilder();
        for (int i = 0; i < s.length(); i++) {
            char ch = s.charAt(i);
            if(Character.isLetter(ch)) {
                if (Character.isLowerCase(ch)) {
                    ch=(char) (ch+32);
                }
            }
            stringBuilder.append(ch);
        }
return  stringBuilder.toString();
    }
}
相关推荐
桦说编程2 小时前
从 ForkJoinPool 的 Compensate 看并发框架的线程补偿思想
java·后端·源码阅读
躺平大鹅4 小时前
Java面向对象入门(类与对象,新手秒懂)
java
初次攀爬者4 小时前
RocketMQ在Spring Boot上的基础使用
java·spring boot·rocketmq
花花无缺5 小时前
搞懂@Autowired 与@Resuorce
java·spring boot·后端
Derek_Smart6 小时前
从一次 OOM 事故说起:打造生产级的 JVM 健康检查组件
java·jvm·spring boot
NE_STOP7 小时前
MyBatis-mybatis入门与增删改查
java
孟陬10 小时前
国外技术周刊 #1:Paul Graham 重新分享最受欢迎的文章《创作者的品味》、本周被划线最多 YouTube《如何在 19 分钟内学会 AI》、为何我不
java·前端·后端
想用offer打牌10 小时前
一站式了解四种限流算法
java·后端·go
华仔啊11 小时前
Java 开发千万别给布尔变量加 is 前缀!很容易背锅
java