String类的基本用法
编程技术  /  houtizong 发布于 3年前   72
字符串的用法;
// 根据字节数组创建字符串
byte[] by = { 'a', 'b', 'c', 'd' };String newByteString = new String(by);
1,length() 获取字符串的长度
// "根据字节数组创建字符串的长度为
int len = newByteString.length();System.out.println("根据字节数组创建字符串的长度为:" + len);
2,codePointAt(int index)
// 返回指定索引处的字符(Unicode 代码点)。
int codePointat = newByteString.codePointAt(2);System.out.println("返回指定索引处的字符(Unicode 代码点)" + codePointat);
3,codePointBefore(int index)
// 返回指定索引的前一个字符的编码(Unicode 代码点)
int codePointatbefore = newByteString.codePointBefore(2);System.out.println("返回指定索引的前一个字符的编码(Unicode 代码点)" + codePointatbefore);
4,codePointCount(int beginIndex, int endIndex)
// 返回此 String 的指定文本范围中的 Unicode 代码点数。
int codePointcount = newByteString.codePointCount(0, 3); System.out.println("返回此 String 的指定文本范围中的 Unicode 代码点数。" + codePointcount);
5,toLowerCase()
// 将字符串转成小写
String tolower = newByteString.toLowerCase();System.out.println("字符串转成小写" + tolower);
6,toUpperCase();
// 将字符串转成大写
String toUpper = newByteString.toUpperCase();System.out.println("字符串转成大写" + toUpper);
7,substring(int beginIndex)
// 截取字符串,输入要截取的开始位置
String sub = newByteString.substring(0);System.out.println("要截取的开始位置" + sub);
8,substring(int beginIndex, int endIndex)
// 在截取的开始位置和结束位置0 <=subStratEnd<2
String subStratEnd = newByteString.substring(0, 2);System.out.println("截取的开始位置和结束位置" + subStratEnd);
9, subSequence(int beginIndex, int endIndex)
// 返回一个新的字符序列,它是此序列的一个子序列。此用法和substring(0, 2)相似;
CharSequence Charsequence = newByteString.subSequence(0, 2);System.out.println("返回一个新的字符序列" + Charsequence);
10,startsWith(String prefix)
//测试此字符串是否以指定的字符开头 true是 false否
boolean b= newByteString.startsWith("a");System.out.println(b);
11,startsWith(String prefix, int toffset)
// 测试此字符串从指定索引开始的子字符串是否以指定前缀开始
String str ="a";boolean c = newByteString.startsWith(str,0);System.out.println("定索引开始的子字符串"+c);
12,indexOf(int ch)
//测试某字符在字符串中第一次出现的位置
int indexof = newByteString.indexOf("b");System.out.println("测试某字符在字符串中第一次出现的位置"+indexof);
13, indexOf(String str)
//测试str字符串中的字符在newByteString字符串第一次出现的位置
int index = newByteString.indexOf(str);System.out.println(index);
14,trim()
//返回此字符串的内容,忽略前导空白和尾部空白。
String Trim=newByteString.trim();System.out.println(Trim);
15,判断字符串是否为空 isEmpty();
16,将字符串转成字符 toCharArray()
17,获得字符串中的字节 byte[] getBytes()
18,比较两个字符串是否相等 equals(Object anObject)
创建String对象
byte[] by = { 'a', 'b', 'c', 's' };
// String()
// 初始化一个新创建的 String 对象,使其表示一个空字符序列。
// String string = new String();
// String(byte[] bytes)
// 通过使用平台的默认字符集解码指定的 byte 数组,构造一个新的 String。
// String string = new String(by);
// String(byte[] bytes, int offset, int length)
// 通过使用平台的默认字符集解码指定的 byte 子数组,构造一个新的 String。
// String newString = new String(by, 1, 2);
// System.out.println(newString);// bc
String常见的问题:
1,字符串相等
String a = new String("Java");String b = new String("Java");System.out.println(a==b);String aa = "Java";String bb ="Java";System.out.println(aa ==bb);
结果:
false new出来的两个地址
true 变量是放在常量池中的aa,bb都引用这个地址
2,字符串相+ 的问题
String aa = "java"; String bb = "c"; String dd = "javac"; String cc = aa+bb; System.out.println(cc==dd); false
false
String aa = "java"; String bb = "c"; String dd = "aabb"; String cc = "aa"+"bb"; System.out.println(cc==dd);
true
请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成
网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:[email protected];
文章归档
文章标签
友情链接