(JAVA)String类之比较方法(2)
String类: 获取字符串的内容 一、获取字符串长度public int length() {return value.length;}length 与 lenght()的区别:前面是属性,不需要传参数后面是方法 二、指定下角标,返回固定位置的对应字符串public char charAt(int index) {if ((index < 0) || (index >= value.length)) {throw new StringIndexOutOfBoundsException(index);}return value[index];} 三、返回一个字符在字符串中第一次出现的位置 public int indexOf(String str) {return indexOf(str, 0);} 四、返回一个字符在指定位置后,出现的位置public int indexOf(String str, int fromIndex) {return indexOf(value, 0, value.length,str.value, 0, str.value.length, fromIndex);} 五、返回一个字符(字符串)在另一个字符串中最后一次出现的位置public int lastIndexOf(String str) {return lastIndexOf(str, value.length);} 六、获取字符串的一部分 String substring(int beginIndex,int endIndex);public String substring(int beginIndex, int endIndex) {if (beginIndex < 0) {throw new StringIndexOutOfBoundsException(beginIndex);}if (endIndex > value.length) {throw new StringIndexOutOfBoundsException(endIndex);}int subLen = endIndex - beginIndex;if (subLen < 0) {throw new StringIndexOutOfBoundsException(subLen);}return ((beginIndex == 0) && (endIndex == value.length)) ? this: new String(value, beginIndex, subLen);} 七、转换 1.将字符串转换为字节数组public byte[] getBytes(Charset charset) {if (charset == null) throw new NullPointerException();return StringCoding.encode(charset, value, 0, value.length);} 2.将字符串全部转成小写public String toLowerCase(Locale locale) {if (locale == null) {throw new NullPointerException();}int firstUpper;final int len = value.length;Now check if there are any characters that need to be changed.scan: {for (firstUpper = 0 ; firstUpper < len; ) {char c = value[firstUpper];if ((c >= Character.MIN_HIGH_SURROGATE)&& (c <= Character.MAX_HIGH_SURROGATE)) {int supplChar = codePointAt(firstUpper);if (supplChar != Character.toLowerCase(supplChar)) {break scan;}firstUpper += Character.charCount(supplChar);} else {if (c != Character.toLowerCase(c)) {break scan;}firstUpper++;}}return this;}3.将字符串全部转为大写String.toUpperCase(Locale.ROOT);4.切割,将字符串切割为指定要求的字符串数组,参数为正则表达式String[] split5,替换String replase(char oldchar.char newchar);String replase(String oldString.String newString);6.去掉字符串中两端空格去掉:String trim()7.两个字符串的字典形式比较int compareTo(String s)
import java.nio.charset.StandardCharsets;
import java.util.Locale;public class getStringDome {public static void main(String[] args){methon_1();methon_2();methon_3();menth_4();methon_5();}public static void methon_1(){String a = "asdfhgvscasdf";System.out.println(a.length());System.out.println(a.charAt(3));System.out.println(a.indexOf("s"));System.out.println(a.indexOf("s",2));System.out.println(a.lastIndexOf("s"));System.out.println(a.lastIndexOf("s",4));System.out.println(a.substring(2,5));//遍历字符串
// for (int x = 0;x<a.length();x++){
// System.out.println(a.charAt(x));
// }}public static void methon_2(){byte[] bytes="张三".getBytes(StandardCharsets.UTF_8);for (int x = 0;x < bytes.length;x++){System.out.println(bytes[x]);}byte[] c = {-27,-68,-96};String m = new String(c);System.out.println(m);}public static void methon_3(){String s1 = "AJDSKVvdknvv";s1 = s1.toLowerCase(Locale.ROOT);System.out.println(s1);String s2;s2 = s1.toUpperCase(Locale.ROOT);System.out.println(s2);}public static void menth_4(){String a ="asdkvjbwiejfhljzcnvndj";String[] a1 = a.split("j");for (int x = 0;x <a1.length;x++){System.out.println(a1[x]);}System.out.println("==========================");String b = "192.168.0.1";String[] b1 =b.split("\\.");for (int x = 0;x <a1.length;x++){System.out.println(b1[x]);}System.out.println("==========================");}public static void methon_5(){String c = "zxcvb" ;String c1 = "asdf";int c2 = c.compareTo(c1);System.out.println(c2);}
总结
1. Scanner 了解接收键盘输入
以后使用IO接收 Scanner(System.in)
2. 字符串 -- 熟练
2.1 定义方式,两种
|-- 直接定义 String s = ""
|-- new方法 String s = new String(""),不推荐使用
|-- 定义方法区别,前者一个对象,后者两个对象
2.2 字符串的底层结构--特性
|-- private final char[] value 字符串就是一个字符数组
|-- String字符串,是一个常量,不可以改变
|-- 字符串面试题。引用类型中,数组,类类型,接口,都会改变,唯一就String不变
2.3 构造器
|-- 字节数组变成字符串, new 传递字节数组,查询编码表 byte[] = {};
|-- 字符数组变成字符串, new 传递字符数组,不查询编码表 char[] = {}
2.4 判断方法
|-- equals 重写Object方法,比较字符串是不是完全相等
|-- equalsIgnoreCase 比较字符串是不是完全相等,忽略大小写
|-- contains 判断一个字符串是不是包含另一个字符串
|-- isEmpty 判断是不是空串
|-- startsWith 判断一个字符串是不是以另一个字符串开头
|-- endsWith 判断一个字符串是不是以另一个字符串结尾
2.5 获取方法
|-- charAt 指定索引返回单个字符
|-- indexOf 指定字符,返回第一次出现的索引
|-- lastIndexOf 指定字符,返回最后一次出现的索引
|-- length 返回字符串中字符个数
|-- substring 获取字符串一部分,包含头,不包含尾
2.6 转换方法
|-- getBytes 查询编码表,将字符串转成字节数组
|-- toCharArray 不查询编码表,将字符串转成字符数组
|-- toUpperCase 字符串转成大写
|-- toLowerCase 字符串转成小写
2.7 其他方法
|-- split 切割字符串
|-- replace 替换字符串
|-- trim 去掉两端空格
|-- compareTo 字典顺序比较字符串,又成为自然顺序
(JAVA)String类之比较方法(2)相关推荐
- Java String类的split方法简介
Java String类的split方法简介 String的split()方法用于按传入的字符或字符串对String进行拆分,返回拆分之后的数组. 1.一般用法 用一般的字符,例如 @ 或 , 等符号 ...
- java String类常用的方法
package Day0310.Demo02;public class StringTest02 {public static void main(String[] args) {System.out ...
- Java—String类的intern方法的学习
对intern方法的学习来源于之前偶然看到的一篇博客:[请别再拿"String s = new String("xyz");创建了多少个String实例"来面试 ...
- Java String类的intern()方法
该方法的作用是把字符串加载到常量池中(jdk1.6常量池位于方法区,jdk1.7以后常量池位于堆) 在jdk1.6中,该方法把字符串的值复制到常量区,然后返回常量区里这个字符串的值: 在jdk1.7里 ...
- Java——String类的substring()方法
截取字符串,在java语言中的用法 1. public String substring(int beginIndex) 返回一个新字符串,它是此字符串的一个子字符串.该子字符串始于指定索引处的字符 ...
- Java String类的replaceAll方法
代码勇士真题: 给定一个字符串由a-z字母组成的字符串s,长度任意字母可任意组合. 要求编写函数找出s中不在a-m范围内的字母个数n,要求函数返回字符串格式为:n/s的长度 例如: s="a ...
- java的知识点15——String基础、String类和常量池、String类常用的方法、字符串相等的判断、组合模式
String基础 1. String类又称作不可变字符序列. 2. String位于java.lang包中,Java程序默认导入java.lang包下的所有类. 3. Java字符串就是Unicode ...
- Java——String类的方法
Java--String类的方法 String str1 = "abc" 与String str2 = new String("abc")有什么区别? 字符串常 ...
- Java中String类的concat方法___java的String字符串的concat()方法连接字符串和“+“连接字符串解释
Java中String类的concat方法 在了解concat()之前,首先需要明确的是String的两点特殊性. 长度不可变 值不可变 这两点从源码中对String的声明可以体现: private ...
- java string类的方法_Java-String类的常用方法总结
一.String类 String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.java把String类声明的final类,不能有类.String类对象创 ...
最新文章
- BC28、BC95通过LWM2M连接电信AEP(ctwing)
- oracle 输出重复记录,ORACLE 去除重复记录
- SEO(搜索引擎最佳化)简介
- linux每日命令(26):Linux文件属性详解
- c# select标签绑定枚举,并以Description做Text显示
- js微信小程序页面左上角返回跳转指定页面
- 什么叫死锁?死锁案例?死锁必须满足哪些条件?如何定位死锁问题?有哪些解决死锁策略?哲学家问题?
- 有奖征文 | 蒋涛邀你悦评《UNIX传奇》新书,赢技术进阶好礼
- hibernate的查询方式
- python time datetime模块最详尽讲解
- SAP固定资产业务场景及方案
- Nodejs操作Access数据库
- 原生android字体,不用Root,国产安卓手机如何把字体切换成安卓原生字体
- 怎样抢注到一个刚过期不久的域名?
- 动态规划问题——当一脸懵逼后的心路历程
- go 当前时间、时间戳和时间字符串及相互转换
- 导航定位用户向服务器发送位置请求6,跨平台的地理位置定位方法、平台及定位接入服务器...
- 【单片机原理及其应用】第二章PIC16F887的基本介绍
- 生日祝福代码python_Python|送给朋友的生日祝福
- 论文阅读笔记:(2022.05) Observability-Aware Intrinsic and Extrinsic Calibration of LiDAR-IMU Systems