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();
    }
}
相关推荐
xiaoliuliu12345几秒前
R语言4.5.0安装教程:详细步骤+自定义安装路径(64位)
开发语言·r语言
小宇的天下1 分钟前
Calibre LVS Circuit Comparison(3)
开发语言·php·lvs
96771 分钟前
多线程编程:整个互斥的流程以及scoped_lock的用法,以及作用,以及 硬件上的原子操作和逻辑上的原子操作
开发语言·c++·算法
liangblog3 分钟前
Spring Boot中手动实例化 `JdbcTemplate` 并指定 数据源
java·spring boot·后端
liuyao_xianhui3 分钟前
优选算法_topk问题_快速排序算法_堆_C++
java·开发语言·数据结构·c++·算法·链表·排序算法
liuyao_xianhui5 分钟前
优选算法_堆_最后一块石头的重量_C++
java·开发语言·c++·算法·链表
好家伙VCC6 分钟前
# 发散创新:基于状态通道的以太坊智能合约高效交互实践在区块链应用开发中,**交易
java·python·区块链·智能合约
羊小猪~~8 分钟前
算法/力扣--栈与队列经典题目
开发语言·c++·后端·考研·算法·leetcode·职场和发展
Noushiki8 分钟前
数据一致性保障方案 -java后端
java·开发语言
书到用时方恨少!9 分钟前
Python 零基础入门系列(终篇):综合实战项目
开发语言·python