JAVA笔记---------字符串基础与操作
字符串基础:
声明字符串:
String a;
String a,b;
赋值:
String a="";//若没有赋值该值为空值null
String b,c;
b="";
C="";
构造方法实例化:
String a =new String();
String b =new String(a);
字符数组实例化:
使用字符数组创建一个字符串
构造方法:public String (char[] value)
char[] charArray={ };
String a =new String(charArray,3,2);/*charArray代表被转换为字符串的数组,
3代表从第几序号开始,2代表提取几个元素*/
拼接字符串:
语法:public String concat(Stringstr)//str是准备在末尾位置拼接的字符串
String str="abc";
str=str.concat("de");
输出str显示结果:abcde
获取字符串长度:
语法:public int length()
String password ="1234567890";
int size =password.length();
输出size显示结果:10
获取指定位置的字符:
语法:public char charAt(int index)//index为要获取的索引位置
String name ="Kirito;
char ch =name.charAt(0);
输出ch显示结果:K
获取子字符串索引位置:
语法:public int indexOf(String str)//str为要获取的子字符串
String str ="King of the world";
int index =str.indexOf("o");//返回o第一次出现的位置
输出index显示结果:5
判断字符串结尾内容:
语法:public boolean endsWith(String suffix)//suffix为要对比的字符串
String fileName ="HelloWorld.java";
Boolean bool1 =fileName.endsWith(".java");//该方法只能判断结尾所有的字符串必须全部的包含
Boolean bool2 =fileName.endsWith(".jpg");
输出boo1显示结果:true
输出boo2显示结果:false
判断字符串句首内容:
语法:public boolean startsWith(String prefix)//prefix为要对比的字符串
String str ="要和可莉一起去炸鱼吗?虽然说被抓住就是一整天的禁闭,但鱼很好吃,所以值得!";
Boolean bool1 =str.startsWith("要和可莉一起");
Boolean bool2 =str.startsWith("要和琴一起");
输出bool1显示结果:true
输出bool2显示结果:false
获取字符串数组:
语法:public char[] toCharArray()
String str ="可莉前来报到";
char[] ch=str.toCharArray();
查询子字符串是否存在:
语法:public boolean contains(String string)//string为要查找的子字符串
String str ="8888B888";
Boolean bool1 =str.contains("B");
Boolean bool1 =str.contains("A");
输出bool1显示结果:true
输出bool1显示结果:false
比较字符串是否相等:
语法:public boolean equals(String abotherString)
String name =new String("keli");
String adv =new String("keli");
boolean bool =name.equals(adv);
忽略大小写比较:
语法:public boolean equalslgnoreCase(String anotherString)//anotherString被比较的字符串
String str1 =new String("abc");
String str2 =new String("ABC");
boolean bool =str1.equalslgnoreCase(str2);
字符串操作:
截取字符串:
1.从指定位置开始截取:
语法:public String substring(int beginindex)//开始截取的位置
String id ="123456789123456789";
String birthdate =id.substring(6);
2.截取指定的位置:
语法:public String substring(int beginindex,int endindex)
String id="123456789123456789";
String birthdate =id.substring(6,14);
替换字符串:
1.将旧字符串替换成新字符串
语法:public String replace(CharSequence target,CharSequce replacement)
//target旧字符,replacement替换后的新字符序列
String str="一二一二";
String replaceStr =str.replace("一","壹");
输出replaceStr显示结果:壹二壹二
2.替换字符串,支持正则表达式
语法:public String replaceAll(String regex,String replacement)
//regex旧字符串或正则表达式,replacement替换后的新字符串
String str ="123456abc";
String replaceStr =str.replaceAll("\\d","?");//\\d表示数字0~9的任何一个
输出replaceStr显示结果:??????abcd
3.替换第一次出现的字符串
语法:public String replaceFirst(String regex,String replacement)
//regex旧字符串或正则表达式,replacement替换后的新字符串
String str ="Java";
String replaceStr =str.replaceFirst("a","A");
输出replaceStr显示结果:JAvA
字符串分割:
1.将字符串按照指定的符号分割成数组
语法:public String[] split(Stirng regex)//用于分割符号
String str ="abc,def,ghi";
String[] strArray =str.split(",");
2.限定分割次数
通过参数限定分割的次数
语法:public String[] split(String regex,int limit)
//regex用于分割字符,limit分割字符
String str ="192.168.0.1";
String[] firstArray=str.split("\\.");
String[] secondArray=str.split("\\.",2);
字符串大小写转换:
将字符串变成大写:
语法:public String toUpperCase()
将字符串变成小写:
语句:public String toLowerCase()
String str ="abc DEF";
String strLOW =str.toLowerCase();
String strUP =str.toUpperCase();
输出strLOW显示结果:abc def
输出strUP显示结果:AVC DEF
去除空白内容:
去除首尾空白内容
语法:public String trim()
String str =" abc ";
String shortStr =str.trim();
输出shortStr显示结果:abc
去除字符串中所有空白部分
String str =" a b cd e f g ";
String shortstr=str.replaceAll("\\s","");//正则表达式,空内容字符串
输出shortstr显示结果:abcdefg
格式化字符串:
时间格式化:
语法:String.format(String format,Object....args)
Date date =new Date();
String str =String.format("%tF",date);
StringBuffer(可变字符串):
StringBuffer类是线程安全的可变字符串序列,它是一个类是于String的字符串缓冲区,其实体容量会随着存放的字符串增加而自动增加。
语法:StringBuffer sbt =new StringBuffer();StringBuffer sbt =new StringBuffer("abc":;StringBuffer sbt =new StringBuffer(32);//初始字符序列容量为32个字符
追加字符序列:
语法:public StringBuffer append(Object obj)
StringBuffer sbt=new StringBuffer();
sbt.append("城里放炮");
sbt.append("禁闭室报道");
sbt.append("炸弹伤人");
sbt.append("琴找上门");
输出sbt显示结果:城里放炮禁闭室报道炸弹伤人琴找上门
修改指定索引处的字符:
语法:public void setCharAt(int index,char ch)
StringBuffer sbt =new StringBuffer("0123456");
sbt.setCharAt(3,'A');
输出sbt显示结果:123A56
字符串反序:
语法:public StringBuffer reverse()
StringBuffer sbt =new StringBuffer("1234567");
sbt.reverse();
输出sbt显示结果:7654321
删除子字符串:
语法:public StringBuffer delete(int start,int end)
StringBuffer sbt=new StringBuffer("包包花铃抱抱");
sbt.delete(2,4);//从索引2开始删除,到4结束,包括索引2但不包括索引4
输出sbt显示结果:包包抱抱
与String类似的方法:
sbt.length()获取字符串序列长度
sbt.charAt(5)获取索引为5的字符
sbt.indexOf("DEF")获取DEF字符串所在的索引位置
sbt.substring(0,2)截取从索引0开始值索引2之间的字符串
sbt.replace(2,5,"1234")将从索引2开始至索引5之间的字符序列替换成“1234”
JAVA笔记---------字符串基础与操作相关推荐
- 关于java线程同步的笔记_线程同步(JAVA笔记-线程基础篇)
在多线程应用程序中经常会遇到线程同步的问题.比如:两个线程A.线程B可能会 "同时" 执行同一段代码,或修改同一个变量.而很多时候我们是不希望这样的. 这时候,就需要用到线程同步. ...
- Java - String字符串的部分操作
String转换为int String 字符串转整型 int 有以下两种方式: Integer.parseInt(str) Integer.valueOf(str).intValue() 注意:Int ...
- java笔记之基础-outer标签
日常笔记之java基础-outer标签 介绍: 业务逻辑中经常需要用到for循环,其中也会有循环嵌套循环,结束一层循环仅需一个break即可,但如果想结束两层,或者三层怎么搞呢,Java提供了ou ...
- java笔记从基础到高级完整版
Java概述 java完整版笔记 Java是跨平台的编程语言,一次编写,到处运行.Java程序是 运行在jvm虚拟机上,不同的操作系统安装jvm就可以运行Java程序. Java开发环境配置 1. ...
- Java笔记-字符串编码与解码以及编码表原理
编码表 编码表:是一张由字符及其对应编码的表 计算机只能识别二进制数据,早期由电信号演化而来. 为了方便使用计算机,让它可以识别各个国家的文字,就将各个国家的文字用数字来表示,并一一对应,形成一张编码 ...
- Java数据库连接--JDBC基础知识(操作数据库:增删改查)
一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...
- Java笔记(基础第二篇)
声明数组 数组元素类型 数组名字[]; 数组元素类型[] 数组名字; 分配内存空间 数组名字 = new 数组元素类型[数组元素的个数] 其中使用new关键字为数组分配内存时,数组中各个元素的初始化值 ...
- Python语言程序设计(嵩天老师版)第三周笔记——字符串类型及操作
一.字符串类型的表示: 由0个或多个字符组成的有序字符序列 字符串有2类共4种表示方法: 1.字符串由一对单引号或一对双引号表示--仅表示单行字符串 2.由一对三引号或三双引号表示,可 ...
- java需要记的语法,Java笔记(三)……基础语法
myeclipse,eclipse控制台输出乱码问题 首先我描述一下问题,我在做udp socket编程(一个聊天的程序)的时候,从控制台中读取中文,然后再向控制台中打印,出现中文乱码的情况. 1.出 ...
最新文章
- 【转载】用三段 140 字符以内的代码生成一张 1024×1024 的图片
- 牛客假日团队赛6 D	迷路的牛 (思维)
- vue-cli新建的项目webpack设置涉及的大部分插件整理
- 湘乡江南计算机学校,湘乡职业中等专业学校2021年招生录取分数线
- VSS Get Latest Version 没有提示recursive的对话框解决
- ajax返回list前台遍历_List、set集合接口分析
- 插入数据的时候出现错误:Error during job, obtaining debugging information…
- 腾讯广告北京招聘专场,offer等你解锁
- AcWing285. 没有上司的舞会(树形DP)题解
- 关于Linux系统下若干易混淆目录的分析
- C#保存PictureBox或Bitmap图片为bmp|png|gif|jpg格式
- 黑客攻击行为特征分析 反攻击技术综合性分析报告
- input正则邮箱_javascript写一个校验邮箱的正则表达式
- Layui 监听 复选框 提交表单
- Edraw Max 9.x 安装
- qq linux五笔输入法,qq五笔输入法
- 经典有源滤波电路(赛伦-凯滤波器)
- 数据结构与算法分析:算法分析
- 四网协同之WLAN专利分析与启示
- 开启CPU虚拟化功能
热门文章
- matplotlib·2(绘制饼图,直方图,极坐标图,复杂子区域分割)
- 【中科院】分子生物学-朱玉贤第四版-笔记-第13讲 原核生物表达调控
- jvm原理解析——不疯魔不成活
- 天津达内聊H5 软键盘兼容方案
- sml基本语法(一)
- 如何投影一个纹理 (翻译:心蓝 潘李亮)
- 京东商品详情页API接口、京东商品销量API接口、京东商品列表API接口、京东APP详情API接口、京东详情API接口,京东SKU信息接口
- 计算机考研数学一用哪些书,2019计算机考研数学:常见三类参考书的使用方法...
- 企业邮局在koomail里的设置方法
- 时间序列预测-入门概念