🌈Java从入门到入坟⭐学习笔记⭐(一)String常用方法总结😊(小白必备知识点!!!)

举报
Code皮皮虾 发表于 2021/08/17 23:25:10 2021/08/17
【摘要】 🌈Java从入门到入坟⭐学习笔记⭐(一)String常用方法总结😊(小白必备知识点!!!)

Code皮皮虾 一个沙雕而又有趣的憨憨少年,和大多数小伙伴们一样喜欢听歌、游戏,当然除此之外还有写作的兴趣,emm…,日子还很长,让我们一起加油努力叭🌈

欢迎各位小伙伴们关注我的公众号:JavaCodes,名称虽带Java但涉及范围可不止Java领域噢😁,期待您的关注❤

字符串广泛应用 在 Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串。

1、charAt()方法

在这里插入图片描述

char c = "皮皮虾".charAt(1);
System.out.println(c);

在这里插入图片描述

"皮皮虾"是一个对象。只要是对象就能使用点.


2、compareTo()方法

在这里插入图片描述

int result1 = "abc".compareTo("abc");
System.out.println(result1);

int result2 = "abc".compareTo("abd");
System.out.println(result2);

int result3 = "abd".compareTo("abc");
System.out.println(result3);

在这里插入图片描述
==总结==

  1. 如果参数字符串等于此字符串,则返回值 0;
  2. 如果此字符串小于字符串参数,则返回一个小于 0 的值;
  3. 如果此字符串大于字符串参数,则返回一个大于 0 的值。

返回值是整型,它是先比较对应字符的大小(ASCII码顺序),==如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的差值==,==如果第一个字符和参数的第一个字符相等,则以第二个字符和参数的第二个字符做比较==,以此类推,直至比较的字符或被比较的字符有一方结束。

System.out.println("abc".compareTo("cba"));

在这里插入图片描述

比较第一个字符串,a-c=-2,则返回-2


3、contains()方法

在这里插入图片描述

==简单来说就是判断前面的字符串是否包含后面的子字符串==

System.out.println("HelloWorld!".contains("Wor"));
System.out.println("http://www.baidu.com".contains("https"));

在这里插入图片描述


4、endsWith()和startsWith()方法

在这里插入图片描述

在这里插入图片描述

System.out.println("text.txt".endsWith("txt"));
System.out.println("text.txt".endsWith("java"));
System.out.println("text.txt".startsWith("text"));
System.out.println("text.txt".startsWith("test"));

在这里插入图片描述

在这里插入图片描述

System.out.println("text.txt".startsWith("text",0));
System.out.println("text.txt".startsWith("test",1));

在这里插入图片描述


5、compareTo()和equals()区别

在这里插入图片描述

==equals()考虑大小写==

System.out.println("abc".equals("abc"));
System.out.println("abc".equals("aBc"));
System.out.println("abc".equals("bbb"));

在这里插入图片描述

如果给定对象与字符串相等,则返回 true;否则返回 false。

==compareTo()会返回二者的差值,即返回的是一个数字;而equals就简单一些,只返回true或者false。
最后,compareTo()和equals()都可以判断其他基本数据类型,比如说Integer,Java的源码中对这两者方法都做了一些重载,可以根据参数的类型去自动匹配相应的方法,他们的原理也非常简单,只是一些简单的减法或者(?:)这类判断。==


6、equalsIgnoreCase()方法

在这里插入图片描述

==equalsIgnoreCase()忽略大小写==

System.out.println("abc".equalsIgnoreCase("abc"));
System.out.println("abc".equalsIgnoreCase("ABc"));
System.out.println("abc".equalsIgnoreCase("bbb"));

在这里插入图片描述


7、getBytes()方法

在这里插入图片描述

byte[] bytes = "abcde".getBytes();
for (byte b:bytes){
 System.out.println(b);
}

在这里插入图片描述


8、indexof()和lastIndexOf()方法

在这里插入图片描述

System.out.println("abcdefghygklmn".indexOf("a"));
System.out.println("abcdefghygklmn".indexOf("def"));
System.out.println("abcdefghygklmn".indexOf("l"));

在这里插入图片描述

在这里插入图片描述

System.out.println("abcdefgaabbcc".lastIndexOf("a"));
System.out.println("abcdefgaabbcc".lastIndexOf("c"));

在这里插入图片描述


9、isEmpty()方法

在这里插入图片描述

System.out.println("".isEmpty());
System.out.println("aaa".isEmpty());

在这里插入图片描述


10、replace()方法

在这里插入图片描述

String text = "aaabbbccc";
System.out.println(text.replace("a","d"));

String param = "name=皮皮虾&age=18&address=池塘";
System.out.println(param.replace("&",":"));

在这里插入图片描述


11、split()方法

在这里插入图片描述

也可以根据字符串来分割

String str = "2020-08-14";
String[] splits = str.split("-");
	for (String s: splits) {
	    System.out.println(s);
 }

 System.out.println("--------------");

 String param = "name=皮皮虾&age=18&address=池塘";
 String[] split = param.split("&");
	for (String s: split) {
	    System.out.println(s);
 }

在这里插入图片描述


12、substring()方法

在这里插入图片描述
在这里插入图片描述

  1. beginIndex – 起始索引(包括), 索引从 0 开始。

  2. endIndex – 结束索引(不包括)。

String text = "http://www.baidu.com";
System.out.println(text.substring(7));
System.out.println(text.substring(0,7));

在这里插入图片描述


13、toCharArray()方法

在这里插入图片描述

char[] chars = "最爱皮皮虾".toCharArray();
for (char ch:chars){
       System.out.println(ch);
}

在这里插入图片描述


14、toLowerCase()和toUpperCase()方法

在这里插入图片描述
在这里插入图片描述

String text = "aaAA";
System.out.println(text.toLowerCase());
System.out.println(text.toUpperCase());

在这里插入图片描述


15、trim()方法

在这里插入图片描述

==去除字符串前后空白==

String text = "   hello   world!   ";
System.out.println(text.trim());

在这里插入图片描述


16、Valueof()方法

在这里插入图片描述

double d = 1111.11;
boolean b = false;
long l = 123456789;
char[] arr = {'w', 'o', 'r', 'l', 'd'};

System.out.println("返回值 : " + String.valueOf(d) );
System.out.println("返回值 : " + String.valueOf(b) );
System.out.println("返回值 : " + String.valueOf(l) );
System.out.println("返回值 : " + String.valueOf(arr) );

在这里插入图片描述

在这里插入图片描述

Valueof()底层调用toString()方法

当参数是对象时

  1. 没有重写 toString() 方法时
public class Main {

    public static void main(String[] args) {
        String s = String.valueOf(new Person());
        System.out.println(s);
    }

}
class Person{

}

==打印内存地址==
在这里插入图片描述

  1. 重写了toString() 方法
public class Main {

    public static void main(String[] args) {
        String s = String.valueOf(new Person());
        System.out.println(s);
    }

}
class Person{
    @Override
    public String toString() {
        return "我是皮皮虾";
    }
}

==打印toString()返回的数据==
在这里插入图片描述


16.1、System.out.println()底层调用

Object o = new Object();
System.out.println(o);

调用valueOf()
在这里插入图片描述

调用toString()
在这里插入图片描述

实际上System.out.println()这个方法在输出任何数据的时候都是先转换成字符串,再输出。




最后

我是 Code皮皮虾,一个热爱分享知识的 皮皮虾爱好者,未来的日子里会不断更新出对大家有益的博文,期待大家的关注!!!

创作不易,如果这篇博文对各位有帮助,希望各位小伙伴可以==一键三连哦!==,感谢支持,我们下次再见~~~


一键三连.png

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。