1、Java字符串String

A、实例化String字符串:直接赋值(更合理一些,使用较多)、使用关键字new。

B、String内容的比较

 // TODO Auto-generated method stub
// int a=10;
// int b=10;
// System.out.println(a==b);
String str="Hello";
String str1=new String("Hello");
System.out.println(str==str1); //“==”比较的是地址
System.out.println(str.equals(str1)); //“equals”比较的是内容,只用这个

2、String 常用方法

(1)字符串长度:length()

String str="jikexueyuan";

System.out.println(str.length());结果为:11

(2)字符串转换数组:toCharArray()

 String str="jikexueyuan";
char data[]=str.toCharArray();
for(int i=0;i<data.length;i++){
System.out.print(data[i]+" "); 结果:j i k e x u e y u a n

(3)从字符串中取出指定位置的字符:charAt()

System.out.println(str.charAt(7));  结果:y

(4)字符串与byte数组的转换:getBytes()

 String str="jikexueyuan";
byte bytes[]=str.getBytes();
for(int i=0;i<bytes.length;i++){
System.out.println(new String(bytes)+"\t")

结果:jikexueyuan

jikexueyuan

jikexueyuan

jikexueyuan

jikexueyuan

(5)过滤字符串中存在的字符:indexOf()

String str="jikexueyuan@qq.com";

System.out.println(str.indexOf("@"));

结果:11

(6)去掉字符串的前后空格:trim()

  String str="      jike@qq.com";
System.out.println(str);
System.out.println(str.trim());

结果:

jike@qq.com

jike@qq.com

String str="      jike@qq.com      ";
System.out.println(str+"AA");
System.out.println(str.trim()+"AA");

结果:

jike@qq.com      AA

jike@qq.comAA

(7)从字符串中取出子字符串:subString()

(8)大小写转换:toLowerCase() toUpperCase()  (Java对大小写敏感)

(9)判断字符串的开头结尾字符:endsWith()  startWith()

(10)替换String字符串中的一个字符:replace()

3、Java StringBuffer方法

StringBuffer,缓冲区,本身也是操作字符串,但是与String不同,StringBuffer是可以更改的。StringBuffer是一个操作类,所以必须通过实例化进行操作。

StringBuffer常用方法:

(1)append():追加

(2)insert(): 插入字符串

StringBuffer sbf=new StringBuffer();

sbf.append("hello");

sbf.insert(0, "i love");//0是插入的位置,追加在前面了

System.out.println(sbf.toString());

结果:i lovehello

(3)replace():替换字符串

StringBuffer sbf=new StringBuffer();
sbf.append("hello");
sbf.insert(0, "i love");
System.out.println(sbf.toString());
sbf.replace(1, 3, "wwwtliu");//从第2个位置到第4个位置替换为wwwtliu
System.out.println(sbf.toString());

结果:

i lovehello

iwwwtliuovehello

(4)indexOf():与string的类似

StringBuffer类的应用:

StringBuffer str =new StringBuffer();
str.append("jikexueyuan");
for (int i = 0; i < 100; i++) {
str.append(i); }
System.out.println(str.toString());

4、Java StringBuider用法

(1)一个可变的字符序列,该类被设计作用StringBuffer的一个简易替换,用在字符串缓冲区被单个线程使用的时候。建议优先考虑该类,速度比StringBuffer要快。

(2)但是如果设计到线程安全方面,建议使用StringBuffer

(3)常用方法:Append()和insert()

03-Java String字符串详解的更多相关文章

  1. Java String类详解

    Java String类详解 Java字符串类(java.lang.String)是Java中使用最多的类,也是最为特殊的一个类,很多时候,我们对它既熟悉又陌生. 类结构: public final ...

  2. String 字符串详解 / 常用API

    String 详解 / 常用API 简介 String 是不可改变的字符串序列.String 为字符串常量 StringBuilder 与StringBuffer 均为可改变的字符串序列.为字符串变量 ...

  3. java String.Format详解

    JDK1.5中,String类新增了一个很有用的静态方法String.format(): format(Locale l, String format, Object... args) 使用指定的语言 ...

  4. C# string 字符串详解 恒定 驻留

    string是一种很特殊的数据类型,它既是基元类型又是引用类型,在编译以及运行时,.Net都对它做了一些优化工作,正式这些优化工作有时会迷惑编程人员,使string看起来难以琢磨.这篇文章共四节,来讲 ...

  5. 【转】Java魔法堂:String.format详解

    Java魔法堂:String.format详解     目录     一.前言    二.重载方法     三.占位符     四.对字符.字符串进行格式化     五.对整数进行格式化     六. ...

  6. java 复习整理(四 String类详解)

    String 类详解   StringBuilder与StringBuffer的功能基本相同,不同之处在于StringBuilder是非线程安全的,而StringBuffer是线程安全的,因此效率上S ...

  7. Swift_字符串详解(String)

    Swift_字符串详解(String) 类型别名 //类型别名 fileprivate func testTypeAliases() { let index = String.Index.self p ...

  8. JAVA IO 类库详解

    JAVA IO类库详解 一.InputStream类 1.表示字节输入流的所有类的超类,是一个抽象类. 2.类的方法 方法 参数 功能详述 InputStream 构造方法 available 如果用 ...

  9. Java集合类的详解与应用

    Java集合类的详解与应用 集合简介: 1.定义:可以同时存储不同类型的数据 他的存储空间会随着数据的增大而增大 2.缺点:只能存储引用数据类型 3.优点:更加合理的利用空间,封装了更多的方法,用起来 ...

随机推荐

  1. jQuery轮播图

    yii2 轮播 样式: <style type="text/css"> *{margin:0;padding:0} body{margin:50px} li{list- ...

  2. python构建模拟模型——网站独立访问用户数量

    背景:发现一个有趣的现象,即一些用户在每一月都仅仅访问网站一次,我们想要了解这些人数量的变化趋势. 建立数学模型:简化问题,根据瓮模型推导出公式(具体推导见<数据之魅>,有时间再补充... ...

  3. linux常用命令:4文件压缩和解压命令

    文件压缩和解压命令 压缩命令:gzip.tar[-czf].zip.bzip2 解压缩命令:gunzip.tar[-xzf].unzip.bunzip2 1. 命令名称:gzip 命令英文原意:GNU ...

  4. HDU 4856

    http://acm.hdu.edu.cn/showproblem.php?pid=4856 西安邀请赛的一道题,这道题我们当时在现场最后1h才发现时状态压缩dp,惊险写出 现在回头想发现当时有点呆, ...

  5. hdu 2337 Escape from Enemy Territory

    题目大意 给你一张nn*mm矩形地图.上面有些点上有敌营.给你起点和终点, 你找出一条最优路径.满足最优路径上的点离敌营的最近最短距离是所有路径最短的.若有多条找路径最短的一条. 分析 通过二分来确定 ...

  6. android中的生命周期(新增2个函数)

    onPostOnCreate()和OnPostResme()这两个函数 onPostResume() Called when activity resume is complete (after on ...

  7. Java-->类的成员

    一.方法重载 在同一个类中,方法名相同.形参列表不同的两个多个方法之间构成重载!overload 调用方法的时候,是根据你传递的实参,来决定到底调用的是重载的哪个方法!!! 注意: 1.判断形参列表是 ...

  8. 331. Verify Preorder Serialization of a Binary Tree

    One way to serialize a binary tree is to use pre-order traversal. When we encounter a non-null node, ...

  9. 用Python对excel文件的简单操作

    #-*-coding:utf8-*- import xlrd #代开excel文件读取数据 data = xlrd.open_workbook("C:\\Users\\hyl\\Deskto ...

  10. 最小二乘法 java

    import java.util.ArrayList; import java.util.Collection; import org.apache.commons.math3.optim.Point ...