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 值。索引范围为从 0length() - 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. jq ajax 传递数组 后台php 接值处理

    //jq数组 var arr = [1,2,3]; //把数组转换为json ajax 传递参数的时候不能直接传递数组 转换为json 可直接传递 var datas = JSON.stringify ...

  2. OrientDB部署

    1. 环境准备 操作系统: Centos6.8 内存: 8G(分布式部署时建议4G及以上,否则需要手动修改JVM配置) JDK: 建议jdk8版本(3.0版本要求jdk8) 环境变量:需配置JAVA_ ...

  3. CAT 安装运行配置教程

    CAT安装教程 首先安装mysql数据库,具体步骤参阅<mysql免安装教程>--http://www.cnblogs.com/halberts/p/8723938.html 下载CAT代 ...

  4. django_ORM学生管理系统

    一.新建django项目准备工作 CMD新建项目命令:django-admin startproject [项目名称] pycharm的project目录里新建app命令:python manage. ...

  5. vue生命周期和react生命周期对比

    一 vue的生命周期如下图所示(很清晰)初始化.编译.更新.销毁 二 vue生命周期的栗子 注意触发vue的created事件以后,this便指向vue实例,这点很重要 <!DOCTYPE ht ...

  6. C++三元操作符

    c++的三元操作符形式: //条件表达式 ? 表达式1 : 表达式2; 语义:如果“条件表达式”为true,则整个表达式的值就是表达式1,忽略表达式2:如果“条件表达式”为false,则整个表达式的值 ...

  7. ubuntu14.04上安装Java

    apt-get安装 sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install orac ...

  8. jdbc 连接各种数据库

    package com.fh.controller.ruitai.util; import java.sql.Connection; import java.sql.DriverManager; im ...

  9. hdu1421搬寝室(动态规划)

    搬寝室 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...

  10. CSS随笔3

    1. CSS部分简洁使用 * background-radious:使得边框角“圆化”. * background:pink  url(“图片路径”)  no-repeat: * border 可以有 ...