java常用类--字符串
- String
import java.io.IOException;
import java.util.Arrays; public class Linkin
{
public static void main(String[] args) throws IOException
{
String str = "LinkinPark...";
//找到某一处char值
System.out.println(str.charAt(0));
//测试某一个字符串是否和当前字符串相同
System.out.println("Linkin".equals(str));
//判断该字符串的前缀和后缀
System.out.println(str.startsWith("Lin"));
System.out.println(str.endsWith("..."));
//判断该字符串是否包含指定的内容
System.out.println(str.contains("kin"));
//将指定字符串连接到此字符串的结尾 一般不怎么用 直接用+号连接就好了
System.out.println(str.concat("binger"));
System.out.println(str+"binger");
//使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
byte[] bytes = str.getBytes();
for (byte b : bytes) {
System.out.println(b);
}
//返回指定子字符串在此字符串中第一次出现处的索引
System.out.println(str.indexOf("kin"));
//返回指定字符在此字符串中最后一次出现处的索引
System.out.println(str.lastIndexOf("P"));
//当且仅当 length() 为 0 时返回 true。
System.out.println(str.isEmpty());
//返回此字符串的长度
System.out.println(str.length());
//返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的。
System.out.println(str.replace("L", "B"));
//根据给定正则表达式的匹配拆分此字符串,返回的是字符串数组
System.out.println(Arrays.asList(str.split("i")));
//返回字符串的副本,忽略前导空白和尾部空白
System.out.println(str.trim());
//返回一个新的字符串,它是此字符串的一个子字符串。 后面还可以跟一个参数,表示结尾
System.out.println(str.substring(2));
//返回 int 参数的字符串表示形式 一般不怎么用 直接用加号连接就好了
System.out.println(String.valueOf(2));
System.out.println(2+"");
} }
- 字符串与字符数组
String类提供了将字符串存放到数组中的方法:public void getChars(int start,int end,char c[],int offset )
将字符串中的全部字符存放在一个字符数组中的方法:public char[] toCharArray()
- 字符串与字节数组
public byte[] getBytes() 方法使用平台默认的字符编码,将当前字符串转化为一个字节数组。
public byte[] getBytes(String charsetName) 使用参数指定字符编码,将当前字符串转化为一个字节数组。
- StringBuffer,StringBuilder
StringBuffer append(Object o) StringBuffer append(char n)
StringBuffer append(long n),StringBuffer append(boolean n),
StringBuffer append(float n),StringBuffer append(double n),
public chat charAt(int n )
public void setCharAt(int n ,char ch)
StringBuffer insert(int index, String str) :
public StringBuffer reverse()
StringBuffer delete(int startIndex, int endIndex)
StringBuffer replace( int startIndex ,int endIndex, String str)
import java.io.IOException; public class Linkin
{
public static void main(String[] args) throws IOException
{
//一般使用的构造器有2个 一个无参的 一个传入一个字符串的
StringBuilder sb = new StringBuilder();
//追加字符串
sb.append("LinkinPark...");
//替换
sb.replace(0, 1, "binger");
//删除
sb.delete(0, 1);
//反转
sb.reverse();
// 设置字符序列的长度
sb.setLength(3);
//toString 返回字符串
System.out.println(sb.toString());
} }
String:不可变字符序列
StringBuilder:可变字符序列、效率高、线程不安全
StringBuffer:可变字符序列、效率低、线程安全
String使用陷阱:
string s="a"; //创建了一个字符串 s=s+"b"; //实际上原来的"a"字符串对象已经丢弃了,现在又产生了一个字符串s+"b"(也就是"ab")。如果多次执行这些改变串内容的操作,会导致大量副本字符串对象存留在内存中,降低效率。如果这样的操作放到循环中,会极大影响程序的性能。在玩hibernate的时候,写hql往往要串好多的字符串,记住以后不管是否拼接不拼接hql,统一使用stringBuiler。
java常用类--字符串的更多相关文章
- Java基础 —— Java常用类
Java常用类: java.lang包: java.lang.Object类: hashcode()方法:返回一段整型的哈希码,代表地址. toString()方法:返回父类名+"@&quo ...
- Java常用类学习笔记总结
Java常用类 java.lang.String类的使用 1.概述 String:字符串,使用一对""引起来表示. 1.String声明为final的,不可被继承 2.String ...
- Java 常用类总结(SE基础)
本篇博客对java常用类相关知识进行了归纳总结,比较详细,适用于学习和复习. 1. 字符串相关的类 1.1 String String是一个final类,代表不可变的字符序列.不可被继承. Strin ...
- Java常用类的使用
Java常用类 1. Optional 在我们的开发中,NullPointerException可谓是随时随处可见,为了避免空指针异常,我们常常需要进行 一 些防御式的检查,所以在代码中常常可见if( ...
- Java常用类之要点总结
Java常用类之要点总结
- Java常用类:包装类,String,日期类,Math,File,枚举类
Java常用类:包装类,String,日期类,Math,File,枚举类
- java常用类-上
一,常用类之一包装类 java开发中习惯把八大基本数据类型封装到一个类中,并提供属性和方法,更方便的操作基本数据类型. 包装类的出现并不是用于取代基本数据类型,也取代不了. 包装类位于java.lan ...
- 第十四章 Java常用类
14.常用类 14.1 字符串相关的类 1课时 14.2 JDK 8之前时间日期API 1课时 14.3 JDK8中新时间日期API 1课时 14.4 JDK8中的Optional类 1课时 14.5 ...
- Java 常用类String类、StringBuffer类
常用类 String类.StringBuffer类 String代表不可变的字符序列 "xxxxxxx"为该类的对象 举例(1) public class Test { publi ...
随机推荐
- python之 正则表达式
简介 Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式.Python 1.5之前版本则是通过 regex 模块提供 Emacs 风格的模式.Emacs 风格模式可读 ...
- [转载]binlog归档
1.1. 前言 对数据库数据进行备份都是日常的工作(虽然都是自动做的),备份中有一项必备的那就是binglog了.在工作中一般这些备份都会保留一段时间后归档.时间长了归档的数据将会非常大.这时候我们就 ...
- shader程序员需要注意的优化Tips
在写shader的时候,其实一些写法对于其执行影响非常大,而且由于gpu和cpu在架构上的不同,代码的优化思想也不一样,最近一直在写几个shader,为了性能问题,查阅了很多资料,把一些tips总结下 ...
- flask配置管理
配置管理 复杂的项目需要配置各种配置环境,如果设置项缺少可以直接硬编码进来,比如下面的方式: app.config['DEBUG']=True app.config['SECRET_KEY'] = ' ...
- Codeforces #451 Div2 F
#451 Div2 F 题意 给出一个由数字组成的字符串,要求添加一个加号和等号,满足数字无前导 0 且等式成立. 分析 对于这种只有数字的字符串,可以快速计算某一区间的字符串变成数字后并取模的值,首 ...
- MATLAB数字图像处理学习笔记
我们都知道一幅图片就相当于一个二维数组,可以用一个矩阵来表示,而MATLAB可以说就是为矩阵运算而生的,所以学习图像处理,学习MATLAB势在必行! 一. MATLAB基础知识 1. 读取图像 %im ...
- jQuery之开关灯示例
准备jquery-3.2.1.js文件 <!DOCTYPE html> <html lang="en"> <head> <meta cha ...
- centos7配置阿里云yum源
1)下载repo文件 wget http://mirrors.aliyun.com/repo/Centos-7.repo 2)备份并替换系统的repo文件 cp Centos-7.repo /etc/ ...
- 【JavaScript 实现倒计时(天、时、分、秒)】
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- mysql一些函数的记录
今天瞎搞还是弄不出报名程序,偶尔记住了几个mysql函数 mysql_connect()连接数据库 mysql_error()输出文本报错 mysql_select_db()函数设置活动的MySQL ...