=========== ASP.Net+Android+IOS开发、.Net培训、期待与您交流!===========

  描述字符串对象的类是java.lang.String,String类是不可变(final)的,即对String类的任何改变都是返回一个新的String类对象,这样的话把String类的引用传递给一个方法,该方法对String的任何改变对原引用指向的对象没有任何影响。从本质上认识String类,通过String类的源码中可以看到:

  1. String类是final的,不可被继承。public final class String;

  2. String类是的本质是字符数组char[], 并且其值不可改变。Private final char value[];

  3. String类对象有个特殊的创建的方式,就是直接指定比如String s = "abc","abc"就表示一个字符串对象。而s是"abc"对象的地址,也叫做"abc"对象的引用;

  4. String对象可以通过“+”串联,串联后会生成新的字符串,也可以通过concat()来串联;

  5. Java运行时会维护一个String Pool(String池),String池用来存放运行时中产生的各种字符串,并且池中的字符串的内容不重复。当使用任何方式来创建一个字符串对象s时,Java运行时(运行中JVM)会拿着这个s在String池中找是否存在内容相同的字符串对象,如果不存在,则在池中创建一个字符串s,否则,不在池中添加。只要使用new关键字来创建对象,则一定会在堆区创建一个新的对象。

1.String类的构造方法:

new String(byte[] bytes)将字节数组变成字符串

new String(byte[] bytes, int offset, int length)将字节数组变成字符串,一部分

new String(char[] value)将字符数组变成字符串

new String(char[] value, int offset, int count)将字符数组变成字符串,一部分

2.String类的常用功能

a.判断功能:
equals(字符串)比较字符串是否全等,区别大小写,全等返回true    
contains(字符串)一个字符串是否包含另一个字符串,全包含返回true    
startsWith(字符串)一个字符串是否以另一个字符串开头    
endsWith(字符串)一个字符串是否以另一个字符串结尾    
isEmpty() 判断一个字符串的长度是否是0,是0就返回真
b.获取功能:
charAt(int index)返回这个索引上的单个字符    
indexOf(字符串)获取指定的字符串出现的位置,第一次出现的    
indexOf(字符串,索引)获取指定的字符串出现的位置,第一次出现的    
length()返回字符串的长度    
lastIndexOf(字符串)获取指定的字符串出现的位置,反向查找
c.转换功能:
toUpperCase()字符串全部转成大写,返回新的字符串    
toLowerCase()字符串全部转成小写    
toCharArray()将字符串转成字符数组    
getBytes() 将字节数组转成字符串
d.其他功能:
split(字符串)切割字符串,返回一个字符串数组    
substring(索引,索引)截取字符串一部分,返回新的字符串    
replace(老串,新串)替换字符    
trim()去掉字符串两端的空格

-----------☆-----------ASP.Net+Android+IOS开发、.Net培训、期待与您交流! -----------☆-----------

详细请查看: http://edu.csdn.net

黑马程序员:Java编程_String的更多相关文章

  1. 【黑马18期Java毕业生】黑马程序员Java全套资料+视频+工具

        Java学习路线图引言:        黑马程序员:深知广大爱好Java的人学习是多么困难,没视频没资源,上网花钱还老被骗. 为此我们历时一个月整理这套Java学习路线图,不管你是不懂电脑的小 ...

  2. 黑马程序员——JAVA基础之语法、命名规则

    ------- android培训.java培训.期待与您交流! ---------- 1.java语言组成:关键字,标识符,注释,常量和变量,运算符,语句,函数,数组. 2.java关键字:被Jav ...

  3. 黑马程序员Java基础班+就业班课程笔记全发布(持续更新)

    正在黑马学习,整理了一些课程知识点和比较重要的内容分享给大家,也是给自己拓宽一些视野,仅供大家交流学习,大家有什么更好的内容可以发给我 ,现有黑马教程2000G  QQ 1481135711 这是我总 ...

  4. [刘阳Java]_程序员Java编程进阶的5个注意点,别编程两三年还是增删改查

    此文章也是关注网上好几篇技术文章后,今天分享出来.因为,总有在程序学习路上的小伙伴会感到迷茫.而迷茫存在的情况如下 第一种:在大学学习中出现的迷茫,不知道Java到底要学什么.学习Java的标准是什么 ...

  5. 黑马程序员----java基础笔记中(毕向东)

    <p>------<a href="http://www.itheima.com" target="blank">Java培训.Andr ...

  6. 黑马程序员——JAVA基础之泛型和通配符

    ------- android培训.java培训.期待与您交流! ---------- 泛型:            JDK1.5版本以后出现新特性.用于解决安全问题,是一个类型安全机制. 泛型好处: ...

  7. 黑马程序员——JAVA基础之简述面向对象,类,变量,匿名对象

    ------- android培训.java培训.期待与您交流! ---------- 面向对象: 面向对象是相对面向过程而言 面向对象和面向过程都是一种思想 面向过程 强调的是功能行为 面向对象 将 ...

  8. 黑马程序员----java基础:异常

    dff ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 经常写程序的人对try...catch...finally语句肯定是不陌生的了.但是好多 ...

  9. 黑马程序员——JAVA基础之网络编程

    ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 网络编程 网络模型:OSI参考模型和TCP/IP参考模型 网络通讯三要素: IP地址:InetA ...

  10. 黑马程序员 Java基础<十八>---> 网路编程

    --------------- ASP.Net+Android+IO开发S..Net培训.期待与您交流! --------------- 第一  概述 一.概述: 1.网络模型:OSI参考模型和TCP ...

随机推荐

  1. spring netty-socket.io

    spring-nettysocketio.xml文件内容如下: <?xml version="1.0" encoding="UTF-8"?>< ...

  2. SQL基础语法笔记教程整理

    PS:本文适用SQL Server2008语法. 一.关系型数据库和SQL 实际上准确的讲,SQL是一门语言,而不是一个数据库. 什么是SQL呢?简而言之,SQL就是维护和使用关系型数据库中的的数据的 ...

  3. [问题2014A01] 解答三(升阶法,由董麒麟同学提供)

    [问题2014A01] 解答三(升阶法,由董麒麟同学提供) 引入变量 \(y\),将 \(|A|\) 升阶,考虑如下行列式: \[|B|=\begin{vmatrix} 1 & x_1-a & ...

  4. GZFramwork快速开发框架演练之会员系统(四)添加商品管理

    1.1:创建表结构 新建三张商品关联的表,表模型如下: 创建SQL语句略 1.2:生成表Model(生成方法见上一节) 1.3:生成tb_ProductType的单结构界面然后添加到项目中 1.4:修 ...

  5. 配置eclipse集成开发环境_编译_调试

    1. 因为eclipse是基于Java运行,所以在运行Eclipse之前,需要安装Java SE,对于Java SE,需要Java SE6 JRE系列的版本,可以在这个位置下载: Java SE 6只 ...

  6. iOS - Mac 锁屏快捷键设置

    Mac 锁屏快捷键设置 control + shift + Eject 锁屏快捷键 如果用户要离开电脑一段时间,可以选择直接把笔记本直接合上.但是这样原先在跑的进程就会挂起或者结束,如果正在下载,那么 ...

  7. docker部署tomcat

    一.环境简介 宿主机版本:ubuntu-14.04.3-server-amd64.iso JDK版本:jdk-7u76-linux-x64.tar.gz TOMCAT版本:apache-tomcat- ...

  8. reg.test is not a function 报错

    正则中 比如 var reg = "/^[0-9]$/" 会报 reg.test is not a function 如果 var reg = /^[0-9]$/ 就不会有错 因为 ...

  9. ANSI C与GNU C

    GNU计划,又称革奴计划,是由Richard Stallman在1983年9月27日公开发起的.它的目标是创建一套完全自由的操作系统.它在编写linux的时候自己制作了一个标准成为 GNU C标准.A ...

  10. laravel 的.env 配置文件

      (相关的环境变量) APP_ENV=localAPP_DEBUG=trueAPP_KEY=base64:cWMz1hM4dp9ihoOtUs6iV+BDZX9KtjYvMALFmyEPQfI= D ...