zoukankan      html  css  js  c++  java
  • java学习之String类

    标签(空格分隔): String类


    String 的概述

    class StringDemo{
        
        public static void main(String[] args){
            String s1="abc";//s1是一个类型变量,abc是一个对象,
            //字符串最大的特点,一旦被初始化就不可以改变,
            //s1="kk";//这时候是s1的指向变了,并不是abc
            String s2=new String("abc");
            System.out.println(s1==s2);
            System.out.println(s1.equals(s2));//String 类复写了object对象的方法,用来判断字符串是否相等
            /*
            s1和s2的区别是什么?
            s1代表一个对象,
            s2有两个对象
            
             */
            
            
        }
    }
    

    String类适用于描述字符串事物,那么他就提供了多个方法对于字符创进行操作;

    常见的操作有哪些呢?

    1.获取,2,判断;

    获取:

    1.1字符串中包含的字符串的长度,包含的字符数:int length(),获取长度;
    1.2根据位置上的获取某个字符:char charAt(int index);
    1.3根据字符获取该字符串中的位置int indexof(int ch);返回ch在字符串中第一次出现的位置;
    1.4int indexof(int ch ,int fromindex)从fromindex指定的位置的开始,获取ch在字符串中出现的位置;

    例如如下查看长度:

    class StringMethDemo{
        public static void method_get(){
    
            String str="abcdeakpf";
            //长度
            sop(str.length());
            //根据索引获取字符
            sop(str.charAt(4));
    
            //根据字符获取索引
            sop(str.indexOf('a'));
        }
        public static void sop(Object obj){
    
            System.out.println(obj);
        }
        public static void main(String[] args){
            method_get();
    
        }
    }
    ```
    ```java
    class StringMethDemo{
        public static void method_get(){
    
            String str="abcdeakpf";
            //长度
            sop(str.length());
            //根据索引获取字符
            sop(str.charAt(40));//当访问到字符串中不存在的角标的时候,会发生:StringIndexOfBoundsException.
    
            //根据字符获取索引
            sop(str.indexOf('m',3));//如果没有找到返回-1
        }
        public static void sop(Object obj){
    
            System.out.println(obj);
        }
        public static void main(String[] args){
            method_get();
    
        }
    }
    ```
    ###判断:
    >*
    1.字符串中是否包含某一个子串contains(str),
        特殊之处:indexof(str)可以索引str 第一次出现的位置,如果返回-1,表示该str不在字符串中存在,所以也可以而言用于对指定判断是否包含,if(str.indexOf("aa")!=-1),而且该方法,2.即可以判断,又可以判断出现的位置,
    3.字符串是否以指定内容开头:startsWith(str)
    4.字符串指定内容结尾endsWith(str)
    5.字符串是否为空:boolean isEmpty()是否为0.
    6.equals判断字符串是否相等,复写了object类中的equals方法。
    boolean equals(str)
    7.判断内容是否相等,并忽略大小写;
    Boolean equalsIgnoreCase();
    
    
    ###转换:
    1.将字符数组转成字符串:String(char[]),String(char[],offset,count),将字符数组中的一部分转成字符串,
    2.将字符串转成数组char[] toCharArray[]
    3.将字节数组转成字符串byte[] getBytes()
    4.将字符串转成字节数组
    特殊字符串和字节数组在转换的过程中,是可以指定编码表的;
    ```java
    class StringMethDemo{
        public static void method_trans(){
    
            char[] arr={'a','b','c','d','e','f'};
            String s=new String(arr,1,3);
            sop(s);
            String l1="abcdesd";
            char[] chs=l1.toCharArray();
            for(int x=0;x<chs.length;x++){
    
                sop(chs[x]);
            }
        }
        public static void method_is(){
    
            String str="ArryDemo.java";
            sop(str.startsWith("Arry"));
            sop(str.endsWith("java"));
            sop(str.contains("Demo"));
    
        }
        public static void method_get(){
    
            String str="abcdeakpf";
            //长度
            sop(str.length());
            //根据索引获取字符
            sop(str.charAt(4));
            //根据字符获取索引
            sop(str.indexOf('m',3));//如果没有找到返回-1
            //返回指定字符串最后一次出现的索引
            sop(str.lastIndexOf('a'));
    
    
        }
        public static void sop(Object obj){
    
            System.out.println(obj);
        }
        public static void main(String[] args){
            method_get();
            method_is();
            method_trans();
        }
    ```
    
    ###替换:
    replace(oldchar,newchar);原来的字符串是不会改变的,改变的是新的字符串;
    ```java
    class StringMethDemo{
        public static void method_replace(){
            String l ="hello java";
            String l2=l.replace('a','b');//替换是新的字符串,不是原来的字符串,原来的不变
            
            sop(l2);
    
        }
        public static void method_trans(){
    
            char[] arr={'a','b','c','d','e','f'};
            String s=new String(arr,1,3);
            sop(s);
            String l1="abcdesd";
            char[] chs=l1.toCharArray();
            for(int x=0;x<chs.length;x++){
    
                sop(chs[x]);
            }
        }
        public static void method_is(){
    
            String str="ArryDemo.java";
            sop(str.startsWith("Arry"));
            sop(str.endsWith("java"));
            sop(str.contains("Demo"));
    
        }
        public static void method_get(){
    
            String str="abcdeakpf";
            //长度
            sop(str.length());
            //根据索引获取字符
            sop(str.charAt(4));
            //根据字符获取索引
            sop(str.indexOf('m',3));//如果没有找到返回-1
            //返回指定字符串最后一次出现的索引
            sop(str.lastIndexOf('a'));
    
    
        }
        public static void sop(Object obj){
    
            System.out.println(obj);
        }
        public static void main(String[] args){
            method_get();
            method_is();
            method_trans();
            method_replace();
    
    
        }
    
    ```
    
    
    ###切割:
    String[] split(regex);
    ```java
    class StringMethDemo{
        public static void method_split(){
    
            String l3="zhangsan,lisi,wangsu";
            String[] arr=l3.split(",");
            for(int x=0;x<arr.length;x++){
                sop(arr[x]);
            }
        }
        public static void method_replace(){
            String l ="hello java";
            String l2=l.replace('a','b');//替换是新的字符串,不是原来的字符串,原来的不变
    
            sop(l2);
    
        }
        public static void method_trans(){
    
            char[] arr={'a','b','c','d','e','f'};
            String s=new String(arr,1,3);
            sop(s);
            String l1="abcdesd";
            char[] chs=l1.toCharArray();
            for(int x=0;x<chs.length;x++){
    
                sop(chs[x]);
            }
        }
        public static void method_is(){
    
            String str="ArryDemo.java";
            sop(str.startsWith("Arry"));
            sop(str.endsWith("java"));
            sop(str.contains("Demo"));
    
        }
        public static void method_get(){
    
            String str="abcdeakpf";
            //长度
            sop(str.length());
            //根据索引获取字符
            sop(str.charAt(4));
            //根据字符获取索引
            sop(str.indexOf('m',3));//如果没有找到返回-1
            //返回指定字符串最后一次出现的索引
            sop(str.lastIndexOf('a'));
    
    
        }
        public static void sop(Object obj){
    
            System.out.println(obj);
        }
        public static void main(String[] args){
            method_get();
            method_is();
            method_trans();
            method_replace();
            method_split();
    
    
        }
    }
    ```
    ### 子串:
    获取字符串中的一部分,substring(begin,end);
    ```java
    class StringMethDemo{
        public static void method_sub(){
    
            String l4="abcdef";
            sop(l4.substring(2));//从指定位置开始到结尾,如果交表不存在会存在字符串角标越界
            sop(l4.substring(2,4));//包含头,不包含尾
        }
        public static void method_split(){
    
            String l3="zhangsan,lisi,wangsu";
            String[] arr=l3.split(",");
            for(int x=0;x<arr.length;x++){
                sop(arr[x]);
            }
        }
        public static void method_replace(){
            String l ="hello java";
            String l2=l.replace('a','b');//替换是新的字符串,不是原来的字符串,原来的不变
    
            sop(l2);
    
        }
        public static void method_trans(){
    
            char[] arr={'a','b','c','d','e','f'};
            String s=new String(arr,1,3);
            sop(s);
            String l1="abcdesd";
            char[] chs=l1.toCharArray();
            for(int x=0;x<chs.length;x++){
    
                sop(chs[x]);
            }
        }
        public static void method_is(){
    
            String str="ArryDemo.java";
            sop(str.startsWith("Arry"));
            sop(str.endsWith("java"));
            sop(str.contains("Demo"));
    
        }
        public static void method_get(){
    
            String str="abcdeakpf";
            //长度
            sop(str.length());
            //根据索引获取字符
            sop(str.charAt(4));
            //根据字符获取索引
            sop(str.indexOf('m',3));//如果没有找到返回-1
            //返回指定字符串最后一次出现的索引
            sop(str.lastIndexOf('a'));
    
    
        }
        public static void sop(Object obj){
    
            System.out.println(obj);
        }
        public static void main(String[] args){
            method_get();
            method_is();
            method_trans();
            method_replace();
            method_split();
            method_sub();
    
    
        }
    
    ```
    ### 转换
    1.转大写,转小写:
    
    2.去除字符串中两端的空格去除;
    3.将两个字符串进行自然顺序的比较
    
    ```java
    class StringMethDemo{
        public static void methos_7(){
    
            String l5="     Hello  Java  ";
            sop(l5.toLowerCase());
            sop(l5.toUpperCase());
            sop(l5.trim());
            String l6="a1c";
            String l7="aaa";
            sop(l6.compareTo(l7));
    
    
        }
        public static void method_sub(){
    
            String l4="abcdef";
            sop(l4.substring(2));//从指定位置开始到结尾,如果交表不存在会存在字符串角标越界
            sop(l4.substring(2,4));//包含头,不包含尾
        }
        public static void method_split(){
    
            String l3="zhangsan,lisi,wangsu";
            String[] arr=l3.split(",");
            for(int x=0;x<arr.length;x++){
                sop(arr[x]);
            }
        }
        public static void method_replace(){
            String l ="hello java";
            String l2=l.replace('a','b');//替换是新的字符串,不是原来的字符串,原来的不变
    
            sop(l2);
    
        }
        public static void method_trans(){
    
            char[] arr={'a','b','c','d','e','f'};
            String s=new String(arr,1,3);
            sop(s);
            String l1="abcdesd";
            char[] chs=l1.toCharArray();
            for(int x=0;x<chs.length;x++){
    
                sop(chs[x]);
            }
        }
        public static void method_is(){
    
            String str="ArryDemo.java";
            sop(str.startsWith("Arry"));
            sop(str.endsWith("java"));
            sop(str.contains("Demo"));
    
        }
        public static void method_get(){
    
            String str="abcdeakpf";
            //长度
            sop(str.length());
            //根据索引获取字符
            sop(str.charAt(4));
            //根据字符获取索引
            sop(str.indexOf('m',3));//如果没有找到返回-1
            //返回指定字符串最后一次出现的索引
            sop(str.lastIndexOf('a'));
    
    
        }
        public static void sop(Object obj){
    
            System.out.println(obj);
        }
        public static void main(String[] args){
            method_get();
            method_is();
            method_trans();
            method_replace();
            method_split();
            method_sub();
            methos_7();
    
    
        }
    
    ```
  • 相关阅读:
    xavier NX编译caffe错误记录(二)
    ubuntu16安装微信
    linux中安装onenote(P3X OneNote)
    ubuntu16中,google浏览器安装OneNote Web Clipper插件
    酒店门锁接口说明
    在xaf 14 中实现 Tonyyang原文中的action权限
    MRP生产计划模式在多品种小批量生产过程中遭遇挑战
    C#代码
    简陋的会计凭证金额输入控件(加强) [转]
    简陋的会计凭证金额输入控件(再加强) [转]
  • 原文地址:https://www.cnblogs.com/surewing/p/11456723.html
Copyright © 2011-2022 走看看