一、String常用的方法:

1. == 实质比较两个对象的地址数值

String a = "hello"  (hello为匿名对象)

String a1 = "hello"

String b = new String("hello")

String b1 = new String("hello").intern

String c = b;

a == b ----------> false     false的原因:new会为b新开辟一块内存,所以比较时候两个地址不同(String里面含有intern方法)

                              可以手动向字符串池中添加,运行结果就是ture)

a == a1 --------> ture       ture的原因:第一次字符串常量会放入“字符串池”中,下次再次申请时候,会指向同一块的内存

                                   如果不存在的话,会自动加入内存池中

b == c --------->true

注意:开发时候大部分使用String a1 = "hello"此类方法,避免new String对象会开辟新的内存,造成内存的的浪费。

                             即使new出新的对象,使用intern()方法也会把字符串加入字符串池中

2.equals : 字符串比较里面的内容

 b.equals(a)

 hello.equals(a)

如果String b = null 时候,系统会抛出nullPointExction(空指针异常),开发时候大部分都使用hello.equals(a)此类方法,

原因:就是可以避免出现字符串为空时候抛出的异常

3.开发过程中尽量不要大规模使用String + "hello" + "world"............  , 因为这样也会造成内存的浪费

4.String常用的函数名

 (1). char charAt(int index)  : 查找制定索引的字,第几个位置是什么字母就输出什么字母

 (2). boolean equals(String s)  : 比较两个字符的内容是否相同

 (3). boolean  equalsIgnoreCase(String s) : 比较两个字符串是否相同,忽略大小写

 (4). int compareTo(String s)  : 比较两个字符串的大小关系

 (5). boolean contains(String s) : 查找字符串是否存在

 (6). int indexOf(String s)   : 从起始位置开始查找字符串,存在返回索引数值,不存在返回-1

 (7). int indexOf(String s , int fromIndex )   :  从fromIndex位置开始查找,存在返回索引数值,不存在返回-1

 (8). boolean startWith(String s)   :  判断是否以指定字符串作为起始位置

 (9). boolean startWith(String s , int fromIndex)  :  判断是否已指定字符串从fromIndex位置作为起始位置

 (10). endWith(String s)  :  判断是否已指定字符作为结束位置

 (11). String replaceAll(String s , String replace)  :  把字符串s全部替换成replace字符串

 (12). String replaceFrist(String s , String replace) : 字符串replace只替换第一个s字符串,其余的s字符串的都不用替换

(13). String[]  split(String s)  :  把字符串s全部拆分成字符串数组          String  data[] = String.split("  ") : 这个是按空格来拆分的

 (14). String  split(String s , int limit)  : 将字符串s部分拆分成字符串数组个数limit的长度

 (15). String  substring(int beginIndex)  :  从beginIndex位置截取到字符串结尾

 (16). String  substring(int beginIndex , int endIndex)  : 从beginIndex位置截取到字符串endIndex结束

 (17). String intern()  :  把字符串对象加入字符串池中

 (18). boolean isEmpty()  :  判断字符串是否为空

 (19). int length()  :   获得字符串的长度

 (20). String trim()  :  去掉字符串的左右空格

 (21). String  concat(String s)  : 字符串连接

 (22). String  toUpperCase()  :  将字符串小字母转化成大写字母

 (23). String  toLowerCase()  : 将字符串大写字母转成小写字母

5.字符串转为基本数据

  public static int  parseInt(String s)

  public static double  parseInt(String s)

  public static boolean  parseInt(String s)

6.基本数据类型转换成字符串

  public static String  valueOf(int 、double、boolean)

二、集合学习

  

  

  

Java基础学习篇---------String、集合的学习的更多相关文章

  1. JAVA基础第五章-集合框架Map篇

    业内经常说的一句话是不要重复造轮子,但是有时候,只有自己造一个轮子了,才会深刻明白什么样的轮子适合山路,什么样的轮子适合平地! 我将会持续更新java基础知识,欢迎关注. 往期章节: JAVA基础第一 ...

  2. Java基础及JavaWEB以及SSM框架学习笔记Xmind版

    Java基础及JavaWEB以及SSM框架学习笔记Xmind版 转行做程序员也1年多了,最近开始整理以前学习过程中记录的笔记,以及一些容易犯错的内容.现在分享给网友们.笔记共三部分. JavaSE 目 ...

  3. Java基础-引用数据类型之集合(Collection)

    Java基础-引用数据类型之集合(Collection) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.为什么出现集合类 面向对象语言对事物的体现都是以对象的形式,所以为了方便 ...

  4. Java基础-字符串(String)常用方法

    Java基础-字符串(String)常用方法 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.java的API概念 Java的API(API:Application(应用) Pr ...

  5. Java基础知识强化之集合框架笔记76:ConcurrentHashMap之 ConcurrentHashMap简介

    1. ConcurrentHashMap简介: ConcurrentHashMap是一个线程安全的Hash Table,它的主要功能是提供了一组和Hashtable功能相同但是线程安全的方法.Conc ...

  6. JAVA基础第四章-集合框架Collection篇

    业内经常说的一句话是不要重复造轮子,但是有时候,只有自己造一个轮子了,才会深刻明白什么样的轮子适合山路,什么样的轮子适合平地! 我将会持续更新java基础知识,欢迎关注. 往期章节: JAVA基础第一 ...

  7. Java基础知识强化之集合框架笔记56:Map集合之HashMap集合(HashMap<String,Student>)的案例

    1. HashMap集合(HashMap<String,Student>)的案例 HashMap是最常用的Map集合,它的键值对在存储时要根据键的哈希码来确定值放在哪里. HashMap的 ...

  8. 「Java面试题/知识点精华集」20000+字的Java基础知识篇(2020最新版) !

    本文已经收录进我的 79K Star 的 Java 开源项目 JavaGuide:https://github.com/Snailclimb/JavaGuide (「Java学习+面试指南」一份涵盖大 ...

  9. java基础——入门篇

    整体大纲图 1.认识java 核心知识点:JVM.搭建Java开发环境.java的发展史.java特点.java程序类型.垃圾收集器.J2SE下载和安装.环境变量的配置和测试.以及简单的开发工具的使用 ...

  10. Java基础知识系列——String

    最近晚上没有什么事(主要是不加班有单身),就复习了一下Java的基础知识.我复习Java基础知识主要是依据Java API和The Java™ Tutorials. 今天是第一篇,复习了一下Strin ...

随机推荐

  1. uploadify 文件上传报http 302错误

    uploadify文件上传会报http 302错误,在配置文件中将处理上传的通用类取消验证, 假设上传的通用处理类是fileUpload.ashx,则在配置文件同添加下面过滤配置能解决问题. < ...

  2. Linux下使用openssl生成证书

    利用OpenSSL生成库和命令程序,在生成的命令程序中包括对加/解密算法的测试,openssl程序,ca程序.利用openssl,ca可生成用于C/S模式的证书文件以及CA文件. 参考:http:// ...

  3. Jmeter运行过程中如何让Fiddler同时可以抓获到服务器的应答报文

    在默认情况下,Jmeter运行过程中,Fiddler是抓不到对应的应答报文的. 但是,在某些时候,我们希望分析Jmeter执行失败的原因,想了解Jmeter获取到的应答报文是否有问题,就需要同服务器返 ...

  4. dbutils封装对象,单列,一行一列(用)

    基本用法:查找并封装对象与对象集合 public User findUserByNamePassword(String name,String password){ QueryRunner runne ...

  5. Python模拟登陆淘宝并统计淘宝消费情况的代码实例分享

    Python模拟登陆淘宝并统计淘宝消费情况的代码实例分享 支付宝十年账单上的数字有点吓人,但它统计的项目太多,只是想看看到底单纯在淘宝上支出了多少,于是写了段脚本,统计任意时间段淘宝订单的消费情况,看 ...

  6. 在windows7下创建ftp服务站点

    1.开始->控制面板->程序(点击“卸载程序”)->启动或关闭windows功能->Internet Information Services(Internet信息服务)-&g ...

  7. Docker中容器的备份、恢复和迁移

    1. 备份容器 首先,为了备份Docker中的容器,我们会想看看我们想要备份的容器列表.要达成该目的,我们需要在我们运行着Docker引擎,并已创建了容器的Linux机器中运行 docker ps 命 ...

  8. Netty学习第二节Java IO通信

    一.Java IO通信 名词解释: BIO通信:       采用BIO通信模型的服务端,通常由一个独立的Acceptor线程负责监听客户端连接,在接收到客户端请求后,为每一个客户端建立一个新的线程负 ...

  9. hive 学习之异常篇

    一.刚装上hive在执行hive启动的过程中出现 [hadoop@localhost hive-0.6.0]$ hive Invalid maximum heap size: -Xmx4096m Th ...

  10. DIV+CSS实战(三)

    一.说明 在上篇博客<DIV+CSS实战(二)>中,实现了头部以及Tab标签卡,下面开始实现内容区域,要实现的效果如下: 二.内容最外层的设计(边框) 给最外层加边框,并且设置高度随着里面 ...