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];

      订阅博客周刊 去订阅

文章归档

文章标签

友情链接

Auther ·HouTiZong
侯体宗的博客
© 2020 zongscan.com
版权所有ICP证 : 粤ICP备20027696号
PHP交流群 也可以扫右边的二维码
侯体宗的博客