首页 > 其他分享 >String类的其他功能,替换、去除空格、比较字符串相等 day11

String类的其他功能,替换、去除空格、比较字符串相等 day11

时间:2024-08-08 21:06:53浏览次数:14  
标签:String int System 空格 println day11 字符串 out

package com.shujia.day11;

/*
    String类的其他功能:
        替换功能
            String replace(char old,char new)       将字符串中所有的旧字符使用新字符进行替换,返回新的字符串
            String replace(String old,String new)   将字符串中所有的旧字符串使用新字符串进行替换,返回新的字符串
        去除字符串两空格
            String trim()
        按字典顺序比较两个字符串
            int compareTo(String str)               比较两个字符串中的内容是否相同,当结果是0的时候,说明比较的两个内容相同
            int compareToIgnoreCase(String str) //自己测试
 */
public class StringDemo7 {
    public static void main(String[] args) {
        String s1 = "今天ajava的天气是java非炎热,每走一java步都出java汗!";

        //String replace(char old,char new) 将字符串中所有的旧字符使用新字符进行替换,返回新的字符串
        String res1 = s1.replace('a', '_');
        System.out.println("s1: "+s1);
        System.out.println("res1: "+res1);

        System.out.println("----------------------------------------------");
        //String replace(String old,String new) 将字符串中所有的旧字符串使用新字符串进行替换,返回新的字符串
        String res2 = s1.replace("java", "hadoop");
        System.out.println("s1: "+s1);
        System.out.println("res2: "+res2);

        System.out.println("----------------------------------------------");
        //String trim() 去除字符串两边的空白字符
        String s2 = "    hello   world         ";
        String res3 = s2.trim();
        System.out.println("s2: "+s2);
        System.out.println("res3: "+res3);
//        String res4 = s2.replace(" ", "");
//        System.out.println("res4: "+res4);

        System.out.println("----------------------------------------------");
        //int compareTo(String str) 比较两个字符串中的内容是否相同,当结果是0的时候,说明比较的两个内容相同
        String s3 = "hello";
        String s4 = "world";
        System.out.println(s3.compareTo(s4)); // -15

        String s5 = "hel";
        System.out.println(s3.compareTo(s5)); // 2

        String s6 = "hello";
        System.out.println(s3.compareTo(s6)); // 0

    }
}

int compareTo(String str)方法的源码

//s3.compareTo(s4)
class String{
    public int compareTo(String anotherString) {
            // value -- s3 -- "hello"
            // anotherString -- s4 -- "hel"
            int len1 = value.length; // 5
            int len2 = anotherString.value.length; // 3
            int lim = Math.min(len1, len2); // 3
            char[] v1 = value; // {'h','e','l','l','o'}
            char[] v2 = anotherString.value; // {'h','e','l'}
            int k = 0;


            while (k < lim) {
                char c1 = v1[k]; // 'h'  'e'  'l'
                char c2 = v2[k]; // 'h'  'e'  'l'
                if (c1 != c2) {
                    return c1 - c2; // 104 - 119 = -15
                }
                k++;
            }
            return len1 - len2; // 5-3=2
        }
}

标签:String,int,System,空格,println,day11,字符串,out
From: https://www.cnblogs.com/qiwei-bigdata/p/18349740

相关文章

  • String类的转换功能方法day11
    packagecom.shujia.day11;/*String类的转换功能:byte[]getBytes()将字符串转成一个字节数组char[]toCharArray()将字符串转成一个字符数组staticStringvalueOf(char[]chs)直接使用String类名的方式......
  • String类的获取功能方法 day11
    packagecom.shujia.day11;/*String类的获取功能intlength()获取字符串中的字符个数charcharAt(intindex)根据索引获取对应的字符intindexOf(intch)......
  • String类中的判断方法 day11
    packagecom.shujia.day11;/*String类中的判断功能:booleanequals(Objectobj)String类中的equals是重写父类Object中的equals方法,比较的是内容booleanequalsIgnoreCase(Stringstr)忽略大小写比较字符串内容booleancontains(Strin......
  • String类,及构造方法day11
    packagecom.shujia.day11;/*String:字符串解释:白话文描述:使用一个串将一个一个字符串起来的串儿叫字符串。专业术语:使用双引号将若干个字符括起来的字符序列官网概述:String类代表字符串。Java程序中的所有字符串文字(例如"......
  • String和StringBuffer作为参数传递的区别
    String和StringBuffer作为参数传递,相同的是都重写了父类Object的toString方法,所以展示出来的不是地址值,而是对象内容以下是两者的不同:一、String作为参数传递:因为没有new,所以内容只在方法区,有相同的字符就会指向常量池中同一个地址值,没有就会创建一个新的,但是方法调用的时候,只......
  • from type [java.lang.String] to type [org. apache.kafka.clients.consumer.Consume
    kafka消费消息的时候,报错Noconverterfoundcapableofconvertingfromtype[java.lang.String]totype[org.apache.kafka.clients.consumer.ConsumerRecord<??>,没有消费到数据,这种情况可能是发送方发送的数据是封装了多个ConsumerRecord<??>对象发送过来的,需要用Consume......
  • toString()方法 day10
    /*Object类学习:是java中所有的共同的父类,包括数组1、Object类是属于java.lang包下的,将来使用的时候不需要导包2、构造方法只有一个无参的构造方法3、方法都不是静态的,以为着要有对象才可以调用成员方法:publicinthashCode()......
  • 面向对象程序设计(C++)之 String 类
    1.String构造函数String可以理解为一个字符数组,在创建String类型变量的时候可以使用很多形式,因为String有很多实用的构造函数首先使用String类要包含头文件#include<string>接下来使用代码依次演示上述构造函数的用法: #include<iostream>#include<string>......
  • C++ STL与string类
    一什么是STL?STL,全称是标准模板库(StandardTemplateLibrary),是C++标准库的一部分。STL提供了一些常用的数据结构和算法,帮助开发者更方便、高效地编写代码。通过使用STL,开发者不需要重复造轮子,可以直接使用已经优化好的组件,提高了代码的可读性和可维护性。二STL的六大组件1.......
  • CF305E Playing with String
    难点在于读题发现\(l\)总取\(1\)即可,然后稍加转换就变成个傻逼题了有个显而易见的\(O(n^3)\)的区间DP做法,即考虑记录每个区间的SG函数值,然后枚举分界点转移但仔细思考我们会发现能进行操作的只有初始时\(s_{i-1}=s_{i+1}\)的位置,并不会经过某些操作后使得一个本来不......