0326-Java 字符串方法

java 复制代码
package com.qc.字符串;

import java.util.Arrays;

public class Test {
	public static void main(String[] args) {
//		String x="hello";//字符串 char[]
//		x = x+"demo";//字符串拼接
//		x=x+24+50;
//		x=x+true;
//		System.out.println(x);//hellodemo2450true
//		
//		x.replace("o", "li");//o被替换为li
//		System.out.println(x);
//		
//		String[] arr=x.split("");//分割
//		System.out.println(Arrays.toString(arr));//[h, e, l, l, o, d, e, m, o, 2, 4, 5, 0, t, r, u, e]
//		
//		int index=x.indexOf("dem");//返回子串第一个字母的下标
//		System.out.println(index);//没有返回-1
//		
//		System.out.println(x.substring(2,5));//返回子串,左闭右开
//		System.out.println(x.substring(2));//子串下标从2开始
//		//java不可变字符串
		
		
//		String s1="hello";//字符串常量池里
//		String s2="hello";
//		String s3=new String("hello");
//		String s4=new String("hello");
//		//== 引用类型判断指向是否相同 基本类型判断值是否相等
//		System.out.println(s1==s2);
//		System.out.println(s3==s2);
//		System.out.println(s3==s4);
//		
//		System.out.println(s1.equals(s2));
//		System.out.println(s2.equals(s3));
//		System.out.println(s3.equals(s4));
		
		String s1=null;//null串没有任何空间
		String s2="";//空串有指向
		System.out.println(s1);
		System.out.println(s2);
		
		//API:提供的各种方法
		
		
		
		
	}
}
java 复制代码
package com.qc.字符串;

public class Test2 {
	public static void main(String[] args) {
		//String 不可变字符串,每次拼接创建新的String对象 与String相比StringBuffer和StringBuilder这两个的速度要远远高于String
		//StringBuffer 多线程安全  适合多线程 慢(相对StringBuilder)
		//StringBuilder 多线程不安全 适合单线程 快
		
	long start = System.currentTimeMillis();//时间戳 1970.1.1
	StringBuilder res = new StringBuilder();
	for(int i=0;i<10000;i++) {
		res.append("a");//追加
	}
	long end=System.currentTimeMillis();
	System.out.println("消耗时间:"+(end-start));
	//--------------------------------------
	long start1 = System.currentTimeMillis();//时间戳 1970.1.1
	String res1 ="";
	for(int i=0;i<10000;i++) {
		res1+="a";
	}
	long end1=System.currentTimeMillis();
	System.out.println("消耗时间:"+(end1-start1));
	}
	
	//文件流 网络流 借助缓冲区
}
相关推荐
杨杨杨大侠5 小时前
都能接模型、RAG 和 MCP,Java Agent 框架到底差在哪?
java
Thinker QAQ6 小时前
并发编程(九):BlockingQueue 与 Channel——语言层的原子性、可见性与有序性
java·python·go·并发编程·channel·blockingqueue·message passing
霸道流氓气质7 小时前
RAG 可观测性与生产监控实战:四层遥测模型、五大仪表盘与 OpenTelemetry 全链路追踪的 Java 生产级实现
java·人工智能·python
AOI小白新手上路8 小时前
autodl常用的tar 打包下载(数据集)命令手册:逐段拆解与套用模板
java·大数据·数据库
dishugj9 小时前
系统架构风险点、敏感点和权衡点的概念和区分
java·开发语言
苜蓿muxu9 小时前
常用代码命名规范
java
马优晨10 小时前
JAVA 中 VO 实体类是什么意思,为什么要做这个
java·开发语言·状态模式·java vo·java vo是什么
Baron X10 小时前
Eclipse Temurin 21 (JRE) Alpine 镜像获取、离线导入与推送操作
java·docker·eclipse·temurin
孙浩君10 小时前
我用 Spring Boot + xterm.js 写了个终端风格互动叙事游戏引擎:游戏即文件,上传一个 JSON 就能玩
java