一、String常用字符串

package com.imooc.string;

public class StringDemo {
public static void main(String[] args) {
//定义一个字符串“JAVA 编程 基础”
String str="JAVA 编程 基础";
//打印输出字符串的长度
System.out.println("字符串的长度是:"+str.length());
//取出字符'程'并输出
System.out.println(str.charAt(6));
//取出子串"编程 基础"并输出
System.out.println(str.substring(5));
//取出子串"编程"并输出
System.out.println(str.substring(5, 7));
} }
package com.imooc.string;

public class StringDemo2 {
public static void main(String[] args) {
//定义一个字符串“JAVA 编程 基础”
String str="JAVA 编程 基础";
//查找字符'A'在字符串中第一次出现的位置
System.out.println("字符'A'在字符串中第一次出现的位置:"+str.indexOf('A'));
//查找字符'A'在字符串中最后一次出现的位置
System.out.println("字符'A'在字符串中最后一次出现的位置:"+str.lastIndexOf('A'));
//查找子串"编程"在字符串中第一次出现的位置
System.out.println("子串\"编程\"在字符串中第一次出现的位置:"+str.indexOf("编程"));
//查找子串"编程"在字符串中最后一次出现的位置
System.out.println("子串\"编程\"在字符串中最后一次出现的位置:"+str.lastIndexOf("编程"));
//在字符串inde值为8的位置开始,查找子串"编程"在字符串中第一次出现的位置
System.out.println("字符串inde值为8的位置开始,查找子串\"编程\"在字符串中第一次出现的位置:"+str.indexOf("编程", 8)); } }
package com.imooc.string;

import java.io.UnsupportedEncodingException;

public class StringDemo3 {

    public static void main(String[] args) throws UnsupportedEncodingException {
// 字符串和byte数组之间的相互的转换
//定义一个字符串
String str=new String("JAVA 编程 基础");
//1、将字符串转换为byte数组,并打印输出
byte[] arrs=str.getBytes("GBK");
for(int i=0;i<arrs.length;i++) {
System.out.print(arrs[i]+" ");
}
System.out.println();
//2、将byte数组转换为字符串
String str1=new String(arrs,"GBK");
System.out.println(str1);
} }


二、equals和==的区别

package com.imooc.string;

public class StringDemo4 {

    public static void main(String[] args) {
// ==和equals方法的区别
//定义三个字符串,内容都是imooc
String str1="imooc";
String str2="imooc";
String str3=new String("imooc"); System.out.println("str1和str2的内容相同?"+(str1.equals(str2)));
System.out.println("str1和str3的内容相同?"+(str1.equals(str3))); System.out.println("str1和str2的地址相同?"+(str1==str2));
System.out.println("str1和str3的地址相同?"+(str1==str3));
} }

三、StringBuilder

String具有不可变性,频繁操作String会产生内存消耗,建议使用StringBuilder

package com.imooc.string;

public class StringDemo5 {

    public static void main(String[] args) {
// StringBuilder //定义一个字符串"你好"
StringBuilder str=new StringBuilder("你好");
//在"你好"后面添加内容,将字符串变成"你好,imooc"
str.append(',');
str.append("imooc!");
System.out.println("str="+str);
//将字符串变成"你好,IMOOC!"
//两种方式:
//1.使用delete方法删除imooc,然后再插入MOOC
// str.delete(4,8);
// str.insert(4,"MOOC");
// System.out.println("str="+str);
//2.使用replace直接替换
str.replace(4,8,"MOOC");
System.out.println("str="+str);
} }

Java常用工具——java字符串的更多相关文章

  1. Java常用工具——java集合

    一.ArrayList package com.imooc.set; import java.util.ArrayList; import java.util.List; public class A ...

  2. Java常用工具——java异常

    package com.imooc.exception; import java.util.Scanner; public class TryCatchDemo1 { public static vo ...

  3. Java常用工具——java包装类

    一.包装类和基本数据类型 装箱:基本数据类型——包装类 拆箱:包装类——基本数据类型 package com.imooc.wrap; public class WrapTestOne { public ...

  4. Java常用工具——java多线程

    一.线程的创建 方式一:继承Thread类,重写run()方法 package com.imooc.thread1; class MyThread extends Thread{ public MyT ...

  5. JavaEE-实验一 Java常用工具类编程

    该博客仅专为我的小伙伴提供参考而附加,没空加上代码具体解析,望各位谅解 1.  使用类String类的分割split 将字符串  “Solutions to selected exercises ca ...

  6. Java常用工具+类库合集

    1 常用工具 JVisual vm:可以直接通过软件包下载,支持本地以及远程JVM监控 JMH:Java Microbenchmark Harness,测试基准组件,精度可达纳秒级 JITWatch: ...

  7. Java常用工具类题库

    一.    填空题 在Java中每个Java基本类型在java.lang包中都在一个相应的包装类,把基本类型数据转换为对象,其中包装类Integer是___Number__的直接子类. 包装类Inte ...

  8. JAVA(三)JAVA常用类库/JAVA IO

    成鹏致远 | lcw.cnblog.com |2014-02-01 JAVA常用类库 1.StringBuffer StringBuffer是使用缓冲区的,本身也是操作字符串的,但是与String类不 ...

  9. JAVA常用工具类汇总

    一.功能方法目录清单: 1.getString(String sSource)的功能是判断参数是否为空,为空返回"",否则返回其值: 2.getString(int iSource ...

随机推荐

  1. linux command --- terminal common commands

    switch to root : sudo su.su root.sudo -s switch to users : su god(user name) set root password : sud ...

  2. 对PInvoke函数函数调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。

    C#引入外部非托管类库时,有时候会出现“对PInvoke函数调用导致堆栈不对称.原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配”的报错. 通常在DllImport标签内加入属性Call ...

  3. <每日一题> Day4:CodeForces-1042A.Benches(二分 + 排序)

    题目链接 参考代码: /* 排序 + 每次取小 #include <iostream> #include <algorithm> using namespace std; co ...

  4. 数组去重,排序,重复次数,两个数组合并,两个数组去重,map(),filter(),reduce()

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

  5. ElasticSearch 7.x 默认不在支持指定索引类型

    原文:ElasticSearch 7.x 默认不在支持指定索引类型 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://bl ...

  6. ES6——generator-yield

    yield 既可传参,又可以返回 第一个next()传参无效,只用来启动 如果函数前漏掉 * 就是普通函数 如果有yield会报错, ReferenceError: yield is not defi ...

  7. websocket无法注入bean问题解决方案

    websocket服务端往往需要和服务层打交道,因此需要将服务层的一些bean注入到websocket实现类中使用,但是呢,websocket实现类虽然顶部加上了@Component注解,依然无法通过 ...

  8. nativescript(angular2)——ListView组件

    NativeScript是一个不使用webview的情况下构建跨平台并且原生的iOS和Android应用.使用Angular.TypeScript或JavaScript来获得原生UI和性能体验,同时可 ...

  9. Vue简单封装axios—解决post请求后端接收不到参数问题

    1.在src/下新建api文件夹,api/下新建index.js和public.js 在public.js中: import axios from 'axios'; import qs from 'q ...

  10. load 和 initialize 的区别

    官方文档 Apple的官方文档很清楚地说明了 initialize 和 load 的区别在于: load 是只要类所在文件被引用就会被调用,而 initialize 是在类或者其子类的第一个方法被调用 ...