String str1="hello,world";
String str2="Hello,World";

1.字符串的比较:
例,
System.out.println(str1.compareTo(str2));
System.out.println(str1.compareToIgnoreCase(str2));

2.字符串的查找:                                                              
注释:indexOf() 方法对大小写敏感!
      如果要检索的字符串值没有出现,则该方法返回 -1。
      当字符串中多次出现相同的字符串时,此方法返回的值为第一次出现的位置的索引值。
例,
System.out.println(str1.IndexOf("w"));
System.out.println(str1.lastIndexOf("o"));

3.查找某一位置的一个字符:
例,
System.out.println(str1.charAt(1));           //输出:h

4.获取字符串的长度:
例,
System.out.println(str1.length());

5.截取字符串:
str.substring(int startIndex)
str.substring(int startIndex,int endIndex)

例,
System.out.println(str1.substring(1));       
System.out.println(str1.substring(1,3));

6.字符串大小写转换:
str.toLowerCase() 转换为小写
str1.toUpperCase() 转换为大写

扩展:

  java string,需要进行首字母大写改写,就是先将首字母截取,转化成大写然后再串上后面的。

  例,String str = "this is Java";

    System.out.println(str.substring(0, 1).toUpperCase()+str.substring(1));//输出:This is Java

7.字符串的替换:
注释:replace(CharSequence target, CharSequence replacement) ,用replacement替换所有的target,两个参数都是字符串。
      replaceAll(String regex, String replacement) ,用replacement替换所有的regex匹配项,regex很明显是个正则表达式,replacement是字符串。
      replaceFirst(String regex, String replacement) ,基本和replaceAll相同,区别是只替换第一个匹配项。

例,
System.out.println(str2.replace("ll","y"));       //输出:Heyo,World

8.字符串的分割:
split(String regex)
注释:如果用“.”作为分隔的话,必须是如下写法,String.split("\\."),这样才能正确的分隔开,不能用String.split(".");
      如果用“|”作为分隔的话,必须是如下写法,String.split("\\|"),这样才能正确的分隔开,不能用String.split("|");  “.”和“|”都是转义字符,必须得加"\\";
      如果在一个字符串中有多个分隔符,可以用“|”作为连字符,比如,“acount=? and uu =? or n=?”,把三个都分隔出来,可以用String.split("and|or");

例,
System.out.println(Arrays.toString(str1.split(",")));

9、equals()和==
equals()方法比较字符串对象中的字符,==运算符比较两个对象是否引用同一实例。

例,String s1="Hello";
  String s2=new String(s1);
  s1.equals(s2);   //true
  s1==s2;   //false

!s1.equals(s2); //false

10.字符串的连接:
例,
System.out.println(str1.concat(str2));//输出:hello,worldHello,World

11.字符串格式化:

例,String str = "this is Java"; 

  System.out.println(String.format("Hi %s", str));//输出:Hi this is Java

**************** StringBuffer/StringBuilder类型 ******************************

Java中的String类型是不可改变字符串,所谓的不可改变就是,一旦你对它赋值以后,它的值就不会再发生变化。

当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。

和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。

StringBuilder 类在 Java 5 中被提出,它和 StringBuffer 之间的最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。

由于 StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使用 StringBuilder 类。然而在应用程序要求线程安全的情况下,则必须使用 StringBuffer 类。

11.字符串的删除:
注释:String类型的字符串不能做修改,必须用StringBuffer或者StringBuilder类型。
StringBuffer delete(int startIndex,int endIndex)
StringBuffer deleteCharAt(int loc)

例,
System.out.println(str11.delete(0,3));

12.将字符或字符串的插入已有的字符串:
StringBuffer insert(int index,String str)
StringBuffer insert(int index,char ch)
StringBuffer insert(int index,Object obj)

例,
System.out.println(str11.insert(0,"yyy"));

13.字符串的替换:
注释:StringBuffer类型的字符串替换可以替换一段字符串。
StringBuffer replace(int startIndex,int endIndex,String str)

例,
System.out.println(str11.replace(2,5,"ha"));   //heha,world

14.字符串的添加:
StringBuffer append(String str)

例,
System.out.println(str11.append("pp"));

15.字符串的反转:
StringBuffer reverse()

例,
System.out.println(str11.reverse());

****************String和StringBuffer,StringBuilder之间的转换*******************

String -> StringBuffer ---- StringBuffer sb=new StringBuffer(String)

StringBuffer -> String ---- String s=StringBuffer.toString();

JAVA中字符串常见操作的更多相关文章

  1. Python中字符串常见操作

    (1)find 查找 格式:mystr.find(str, start, end) 例如: mystr.find(str, start=0, end=len(mystr)) 作用:检测str是否包含在 ...

  2. Java中字符串相关操作(判断,增删,转换)

    1:判断字符串中是否包含某个字符(字符串): startsWith(): 这个方法有两个变体并测试如果一个字符串开头的指定索引指定的前缀或在默认情况下从字符串开始位置 此方法定义的语法如下: publ ...

  3. java中字符串的操作

    //创建一个字符数组 char[] charArr = {'a','b','c','d','e','f','g'}; //创建一个字符串 String str = new String(charArr ...

  4. python中字符串常见操作(二)

    # 可迭代对象有:字典,列表,元组,字符串,集合 str1 = '192.168.1.1' str2 = 'as df gh jk' str3 = '小李子' str4 = ['aa','bb','c ...

  5. Java中字符串的一些常见方法

    1.Java中字符串的一些常见方法 /** * */ package com.you.model; /** * @author Administrator * @date 2014-02-24 */ ...

  6. java中的集合操作类(未完待续)

    申明: 实习生的肤浅理解,如发现有错误之处.还望大牛们多多指点 废话 事实上我写java的后台操作,我每次都会遇到一条语句:List<XXXXX> list = new ArrayList ...

  7. 线程安全使用(四) [.NET] 简单接入微信公众号开发:实现自动回复 [C#]C#中字符串的操作 自行实现比dotcore/dotnet更方便更高性能的对象二进制序列化 自已动手做高性能消息队列 自行实现高性能MVC WebAPI 面试题随笔 字符串反转

    线程安全使用(四)   这是时隔多年第四篇,主要是因为身在东软受内网限制,好多文章就只好发到东软内部网站,懒的发到外面,现在一点点把在东软写的文章给转移出来. 这里主要讲解下CancellationT ...

  8. Python3 与 C# 面向对象之~继承与多态 Python3 与 C# 面向对象之~封装 Python3 与 NetCore 基础语法对比(Function专栏) [C#]C#时间日期操作 [C#]C#中字符串的操作 [ASP.NET]NTKO插件使用常见问题 我对C#的认知。

    Python3 与 C# 面向对象之-继承与多态   文章汇总:https://www.cnblogs.com/dotnetcrazy/p/9160514.html 目录: 2.继承 ¶ 2.1.单继 ...

  9. Java中的IO操作和缓冲区

    目录 Java中的IO操作和缓冲区 一.简述 二.IO流的介绍 什么是流 输入输出流的作用范围 三.Java中的字节流和字符流 字节流 字符流 二者的联系 1.InputStreamReader 2. ...

随机推荐

  1. Hibernate---快速入门

    Hibernate简介 Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可 ...

  2. Java基础系列二:Java泛型

    该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 一.泛型概述 1.定 ...

  3. 数竞大佬jhc的三角函数复习题

    班主任让数竞大佬jhc整理的三角函数复习题,我参与编辑完成.个别题目来自参考书.度盘pdf格式下载:复习题提取码419d,答案提取码5a12 "单纯"的运算 本文由蒋浩川原创,由\ ...

  4. [考试反思]0922csp-s模拟测试50:谜朦

    这辈子第5个rank1,是在长期状态低迷再度偶遇傻逼出题人然后总算在下午而不是晚上考了一场试 然后莫名其妙选对了头铁的题把其它暴力打满之后发现sdfz没有参加之后竞争减弱的综合结果. 说是在的其实这套 ...

  5. NOIP模拟 34

    次芝麻,喝喝喝,长寿花! 什么鬼畜题面...一看就不是什么正经出题人 skyh双双双AK了..太巨了... T1 次芝麻 稍稍手玩就能发现分界点以一个优美的方式跳动 然后就愉快地帮次货们次掉了这个题- ...

  6. 用js给元素增加链接

    <!DOCTYPE html><html>    <head>        <meta charset="UTF-8">      ...

  7. Wycieczki 线性代数

    B. Wycieczki 题目描述 给定一张n个点m条边的带权有向图,每条边的边权只可能是1,2,3中的一种.将所有可能的路径按路径长度排序,请输出第k小的路径的长度,注意路径不一定是简单路径,即可以 ...

  8. php mkdir不能创建文件夹的原因

    php mkdir不能创建文件夹的原因 1 权限问题2 open_basedir设置问题 参考方法http://newmiracle.cn/?p=2896

  9. 如何使用24行JavaScript代码实现Redux

    作者:Yazeed Bzadough 译者:小维FE 原文:freecodecamp 为了保证文章的可读性,本文采用意译而非直译. 90%的规约,10%的库. Redux是迄今为止创建的最重要的Jav ...

  10. maven(1)

    Maven进价:Maven的生命周期阶段 一.Maven的生命周期 Maven的生命周期就是对所有的构建过程进行抽象和统一.包含了项目的清理.初始化.编译.测试.打包.集成测试.验证.部署和站点生成等 ...