1. 创建String对象的常用方法

(1) String s1 = "mpptest"

(2)  String s2 = new String();

(3) String s3 = new String("mpptest")

2. String中常用的方法,用法如图所示,具体问度娘

3.  三个方法的使用: lenth()   substring()   charAt()

package com.mpp.string;

public class StringDemo1 {
public static void main(String[] args) {
//定义一个字符串"晚来天欲雪 能饮一杯无"
String str = "晚来天欲雪 能饮一杯无";
System.out.println("字符串的长度是:"+str.length()); //字符串的雪字打印输出 charAt(int index)
System.out.println(str.charAt(4)); //取出子串 天欲
System.out.println(str.substring(2)); //取出从index2开始直到最后的子串,包含2
System.out.println(str.substring(2,4)); //取出index从2到4的子串,包含2不包含4 顾头不顾尾
}
}

4. 两个方法的使用,求字符或子串第一次/最后一次在字符串中出现的位置: indexOf()   lastIndexOf()

package com.mpp.string;

public class StringDemo2 {
public static void main(String[] args) {
String str = new String("赵客缦胡缨 吴钩胡缨霜雪明"); //查找胡在字符串中第一次出现的位置
System.out.println("\"胡\"在字符串中第一次出现的位置:"+str.indexOf("胡"));
//查找子串"胡缨"在字符串中第一次出现的位置
System.out.println("\"胡缨\"在字符串中第一次出现的位置"+str.indexOf("胡缨")); //查找胡在字符串中最后一次次出现的位置
System.out.println(str.lastIndexOf("胡"));
//查找子串"胡缨"在字符串中最后一次出现的位置
System.out.println(str.lastIndexOf("胡缨")); //从indexof为5的位置,找第一次出现的"吴"
System.out.println(str.indexOf("吴",5));
}
}

5. 字符串与byte数组间的相互转换

package com.mpp.string;

import java.io.UnsupportedEncodingException;

public class StringDemo3 {
public static void main(String[] args) throws UnsupportedEncodingException {
//字符串和byte数组之间的相互转换 String str = new String("hhhabc银鞍照白马 飒沓如流星");
//将字符串转换为byte数组,并打印输出
byte[] arrs = str.getBytes("GBK");
for(int i=0;i<arrs.length;i++){
System.out.print(arrs[i]);
} //将byte数组转换成字符串
System.out.println();
String str1 = new String(arrs,"GBK"); //保持字符集的一致,否则会出现乱码
System.out.println(str1);
}
}

6. 等于运算符和equals之间的区别:

引用指向的内容和引用指向的地址

package com.mpp.string;

public class StringDemo5 {
public static void main(String[] args) {
String str1 = "mpp";
String str2 = "mpp";
String str3 = new String("mpp"); System.out.println(str1.equals(str2)); //true 内容相同
System.out.println(str1.equals(str3)); //true 内容相同
System.out.println(str1==str2); //true 地址相同
System.out.println(str1==str3); //false 地址不同
}
}

7. 字符串的不可变性

String的对象一旦被创建,则不能修改,是不可变的

所谓的修改其实是创建了新的对象,所指向的内存空间不变

上图中,s1不再指向imooc所在的内存空间,而是指向了hello,imooc

String常用方法简介的更多相关文章

  1. Javascript语言精粹之String常用方法分析

    Javascript语言精粹之String常用方法分析 1. String常用方法分析 1.1 String.prototype.slice() slice(start,end)方法复制string的 ...

  2. JAVA之旅(十六)——String类,String常用方法,获取,判断,转换,替换,切割,子串,大小写转换,去除空格,比较

    JAVA之旅(十六)--String类,String常用方法,获取,判断,转换,替换,切割,子串,大小写转换,去除空格,比较 过节耽误了几天,我们继续JAVA之旅 一.String概述 String时 ...

  3. String常用方法

    1. String StringBuffer StringBuilder的区别: 001.在执行速度方法 StringBuilder > StringBuffer > String 002 ...

  4. JVM内存分配及String常用方法

    一,JVM内存分配和常量池 ​ 在介绍String类之前,先来简单分析一下在JVM中,对内存的使用是如何进行分配的.如下图所示(注意:在jdk1.8之后便没有方法区了): ​ ​ 如上JVM将内存分为 ...

  5. Java 中String常用方法

    java中String的常用方法 1.length() 字符串的长度 例:char chars[]={'a','b'.'c'}; String s=new String(chars); int len ...

  6. Java中String常用方法

    java中String的常用方法1.length() 字符串的长度 例:char chars[]={'a','b'.'c'}; String s=new String(chars); int len= ...

  7. Java更新XML的四种常用方法简介

    本文简要的讨论了Java语言编程中更新XML文档的四种常用方法,并且分析这四种方法的优劣.其次,本文还对如何控制Java程序输出的XML文档的格式做了展开论述. JAXP是Java API for X ...

  8. 类String 常用方法

    字符串当中的常用方法之比较相关的方法 public boolean equals (object obj):将此字符串与指定的对象进行比较(只有参数是字符串并且内容相同才会返回true) public ...

  9. JavaScript String常用方法和属性

    在JavaScript中,字符串是不可变的,如果使用索引对字符串进行修改浏览器不会报错,但也没有任何效果.JavaScript提供的这些方法不会修改原有字符串的内容,而是返回一个新的期望的字符串. 一 ...

随机推荐

  1. Composer基础应用1

    先唠叨唠叨一些琐碎的事.本人最早从事.Net开发,后来处于好奇慢慢转到了php,因为.net从一早就使用了命名空间(反正从我使用就存在这玩意了),所以在转php时很自然的就使用了命名空间,但是在使用过 ...

  2. Log4j 与 logback对比、及使用配置

    二.参考文档 1.Log4j 与 logback对比.及使用配置

  3. 机器视觉 之 Gabor Feature

    在机器视觉中,gabor feature是一种比较常见的特征,因为其可以很好地模拟人类的视觉冲击响应而被广泛应用于图像处理, gabor feature 一般是通过对图像与gabor filter做卷 ...

  4. bzoj 4515: 游戏 树链剖分+线段树

    题目大意: http://www.lydsy.com/JudgeOnline/problem.php?id=4515 题解: 先让我%一发lych大佬点我去看dalao的题解 讲的很详细. 这里纠正一 ...

  5. 【Lintcode】028.Search a 2D Matrix

    题目: Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the f ...

  6. CHAKRA3 UART2

    APP下: 配置BD文件: #define PADS_TCON_CONFIG Unknown_pad_mux #define PADS_UART2_MODE Unknown_pad_mux #defi ...

  7. .NETFramework:StringBuilder

    ylbtech-.NETFramework:StringBuilder 1.程序集 mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken ...

  8. 四 Vue学习 router学习

    index.js: 按需加载组件: const login = r => require.ensure([], () => r(require('@/page/login')), 'log ...

  9. 自动化测试【Maven+Eclipse+Selenium+Java环境搭建和测试】

    一.下载必要的文件 1.eclipse Eclipse官网 2.jdk jdk官网 3.selenium IDE.Selenium Server.Selenium Client Drivers(Jav ...

  10. 如何用CSS实现矩形按钮右边缘的中间有个往里凹的小半圆

    <!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8& ...