String 类:

  1. java.lang.String 类代表不可变的字符序列;

   2. “XXX” 为该类的一个对象;

3. String 类的常用构造方法:

    ① String(String original):初始化一个新创建的 String 对象,使其表示一个与参数相同的字符序列;换句话说,新创建的字符串是该参数字符串的副本。

② String(char[] value):分配一个新的 String,使其表示字符数组参数中当前包含的字符序列。

③ String(char[] value, int offset, int count):分配一个新的 String,它包含取自字符数组参数一个子数组的字符。 

Demo_1

public class Test {
public static void main(String[] args){
String s1 = "hello";
String s2 = "hello";
System.out.println(s1 == s2); // true
// java的编译器已经优化了, 在 DataSegment中已经存在hello,不会再分配一块存写hello.
String s3 = new String("hello");
String s4 = new String("hello");
System.out.println(s3 == s4); //false
System.out.println(s3.equals(s4)); // true
char c[] = {'s','u','n',' ','j','a','v','a'};
String s5 = new String(c);
System.out.println(c.equals(s5));// false
String s6 = new String(c,4,4);
System.out.println(s5); // sun java
System.out.println(s6); // java
}
}

// 若 String 类没有改写java.lang.object 中的 equals,则指的是同一个对象,而 “s1==s2” 就是没有改写,尽管内容一样,但不是同一个对象。

   4. String 类的常用方法_1:

     (1) public char charAt(int index):返回指定索引处的 char 值。索引范围为从 0 到 length() - 1

(2) public int length():返回此字符串的长度

(3) public int indexOf(String str):如果字符串参数作为一个子字符串在此对象中出现,则返回第一个这种子字符串的第一个字符的索引;如果它不作为一个子字符串出现,则返回 -1

(4) public int indexOf(String str, int fromIndex):指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始,否则返回-1

(5) public boolean equalsIgnoreCase(String anotherString):将此 String 与另一个 String 比较,不考虑大小写。如果两个字符串的长度相同,并且其中的相应字符都相等(忽略大小写),则认为这两个字符串是相等的。如果参数不为 null,且这两个 String 相等(忽略大小写),则返回 true;否则返回 false

(6) public String replace(char oldChar, char newChar):返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的

Demo_2

public class Test {
public static void main(String[] args) {
String s1 = "sun java";
String s2 = "Sun Java";
System.out.println(s1.charAt(1)); // u
System.out.println(s2.length()); // 8
System.out.println(s1.indexOf("java")); // 4
System.out.println(s1.indexOf("Java")); // -1
System.out.println(s1.equals(s2)); // false
System.out.println(s1.equalsIgnoreCase(s2)); // true
String s3 = "你是一只小鸟,你在飞";
String s4 = s3.replace("你", "我");
System.out.println(s4); // 我是一只小鸟,我在飞
}
}

   5. String 类的常用方法_2:

    (1) public boolean startsWith(String prefix):测试此字符串是否以指定的前缀开始

(2) public boolean endsWith(String suffix):测试此字符串是否以指定的后缀结束

(3) public String toLowerCase():使用默认语言环境的规则将此 String 中的所有字符都转换为小写。这等效于调用 toLowerCase(Locale.getDefault())

(4) public String toUpperCase():使用默认语言环境的规则将此 String 中的所有字符都转换为大写。此方法等效于 toUpperCase(Locale.getDefault())

(5) public String substring(int beginIndex):返回一个新的字符串,它是此字符串的一个子字符串。该子字符串从指定索引处的字符开始,直到此字符串末尾

(6) public String substring(int beginIndex, int endIndex):返回一个新字符串,它是此字符串的一个子字符串。该子字符串从指定的 beginIndex 处开始,直到索引 endIndex - 1 处的字符。因此,该子字符串的长度为 endIndex-beginIndex

(7) public String trim():返回字符串的副本,忽略前导空白和尾部空白

Demo_3

public class Test {
public static void main(String[] args) {
String s1 = "You Are A Good Boy!!!";
String s2 = " sun java!!! ";
System.out.println(s1.startsWith("You")); // true
System.out.println(s1.endsWith("Boy")); // false
String s1L = s1.toLowerCase();
String s1U = s1.toUpperCase();
System.out.println(s1L); // you are a good boy!!!
System.out.println(s1U); // YOU ARE A GOOD BOY!!!
String subs = s1.substring(10); //
String sp = s2.trim();
System.out.println(subs); // Good Boy!!!
System.out.println(sp); //sun java!!!
}
}

6. String 类的常用方法_3:

  (1) 静态重载方法

public static String valueOf(...)  // 可以将基本类型数据转换为字符串

6.1  public static String valueOf(boolean b):返回 boolean 参数的字符串表示形式

6.2  public static String valueOf(char c):返回 char 参数的字符串表示形式

6.3  public static String valueOf(int i): 返回 int 参数的字符串表示形式

6.4  public static String valueOf(long L):返回 long 参数的字符串表示形式

6.5  public static String valueOf(float f):返回 float 参数的字符串表示形式

6.6  public static String valueOf(double d):返回 double 参数的字符串表示形式

Demo_4

public class Test {
public static void main(String[] args) {
int i = 12345678;
String s1 = String.valueOf(i);
System.out.println("j是"+s1.length()+"位数"); // j是8位数
String s2 = "Mary,Fa,1976";
String s3[] = s2.split(",");
System.out.println(s3.length); // 3
for(int j=0;j<s3.length;j++){
System.out.print(s3[j]+" "); // Mary Fa 1976
}
}
}

Java常用类之String的更多相关文章

  1. Java常用类:包装类,String,日期类,Math,File,枚举类

    Java常用类:包装类,String,日期类,Math,File,枚举类

  2. Java常用类:String

    一.介绍 String:不可变的Unicode字符序列     例如:"Java"   就是4个Unicode字符J,a,v,a组成的 Java没有内置的字符串类型,而是在标准的J ...

  3. Java常用类之String类、Stringbuffer和Random类练习

    定义一个StringBuffer类对象, 1)使用append方法向对象中添加26个字母,并倒序遍历输入 2)删除前五个字符 package 第十一章常用类; /** * 定义一个StringBuff ...

  4. Java——常用类(String)

    [常用类]   <1>字符串相关类(String.StringBuffer)   <2>基本数据类型包装类   <3>Math类   <4>File类 ...

  5. Java常用类之String类练习

    1.编程. 已知字符串:"this is a test of java". 按要求执行以下操作: (1) 统计该字符串中字母s出现的次数 (2) 取出子字符串"test& ...

  6. java 数据结构(一):java常用类 一 String类

    java.lang.String类的使用1.概述String:字符串,使用一对""引起来表示.1.String声明为final的,不可被继承2.String实现了Serializa ...

  7. Java常用类(String、StringBuffer、Math、Arrays)

    1.String 操作对象时会重新分配堆内存,栈内存的引用会重新指向新的堆内存 2.StringBuffer(字符串缓存区) 操作的对象一直都是一个 3.Math Math.max(xx,xx); M ...

  8. 【Java常用类】String

    文章目录 String String实例化的方式 方式一:通过字面量定义 方式二:new + 构造器的方式 String s = new String("abc")方式创建对象,在 ...

  9. Java基础 —— Java常用类

    Java常用类: java.lang包: java.lang.Object类: hashcode()方法:返回一段整型的哈希码,代表地址. toString()方法:返回父类名+"@&quo ...

随机推荐

  1. PHP环境配置:Windows7+IIS7+PHP+MySQL - 适用于(2008 R2 / 8 / 10)

    配置需求 操作系统:Windows7(x32/x64), windows2008 IIS版本:7.0 PHP版本:7.0.6 及以上 MySQL版本:5.7.12 及以上 第一步:安装 IIS 注意: ...

  2. axios和ajax,fetch的区别

    1,传统 Ajax 指的是 XMLHttpRequest(XHR), 最早出现的发送后端请求技术,隶属于原始js中,核心使用XMLHttpRequest对象,多个请求之间如果有先后关系的话,就会出现回 ...

  3. 7. CSS装饰网页的样式

    CSS中有哪些用来装饰网页的样式呢?在这里我们对一些常用的样式做了总结. 字体样式 /* * 一般样式书写 */ .font_style_1{ font-family: "华文行楷" ...

  4. 详解PreparedStatement

    详解PreparedStatement /** * PrepareStatement 测试插入数据库 */ /** * 如果使用Statement,那么就必须在SQL语句中,实际地去嵌入值,比如之前的 ...

  5. 安装cronsun管理定时脚本

    1. cronsun 是一个分布式任务系统,单个结点和 *nix 机器上的 crontab 近似.支持界面管理机器上的任务,支持任务失败邮件提醒,安装简单,使用方便,是替换 crontab 一个不错的 ...

  6. 基于原生JS封装数组原型上的sort方法

    基于原生JS封装数组原型上的sort方法 最近学习了数组的原型上内置方法的封装,加强了用原生JS封装方法的能力,也进一步理解数组方法封装的过程,实现的功能.虽然没有深入底层,了解源码.以下解法都是基于 ...

  7. Lingo基本操作

    目录 Lingo基本操作 前言 一.Lingo基本运算符 1.1 算术运算符 1.2 逻辑运算符 1.3 关系运算符 二.函数 2.1 标准数学函数 2.2 集循环函数 三.待更新 Lingo基本操作 ...

  8. CF 600 E. Lomsat gelral

    E. Lomsat gelral http://codeforces.com/contest/600/problem/E 题意: 求每个子树内出现次数最多的颜色(如果最多的颜色出现次数相同,将颜色编号 ...

  9. LeetCode:36. Valid Sudoku(Medium)

    1. 原题链接 https://leetcode.com/problems/valid-sudoku/description/ 2. 题目要求 给定一个 9✖️9 的数独,判断该数独是否合法 数独用字 ...

  10. Homebrew安装Redis找不到redis.conf文件

    使用Homebrew安装redis完成后,使用命令 redis-server 启动redis,如下图所示: 启动信息中存在一条警告信息:没有指定的配置文件 然而在安装目录中并没有发现redis.con ...