Java基础知识系列——String
最近晚上没有什么事(主要是不加班有单身),就复习了一下Java的基础知识。我复习Java基础知识主要是依据Java API和The Java™ Tutorials。
今天是第一篇,复习了一下String的主要方法。
类String在java.lang.*包下面。
首先定义一个字符串:String str = "I like you,Java.";
一、字符串创建的效率
字符串创建有两种方式:
1.String str = "I like you,Java.";
2.String str = new String("I like you,Java.");
通过下面的例子,我可以负责任的说第一种方式效率特别高,不管穿件多少次时间都是0.
以下是例子:
long startTime = System.currentTimeMillis();
for( int i=0; i<10000; i++){
String aaa = "111";
aaa.compareTo( "111");
}
long endTime = System.currentTimeMillis();
System.out.println( "ss:" + (endTime-startTime));
long startTime1 = System.currentTimeMillis();
for( int i=0; i<10000; i++){
String aaa = new String("111");
}
long endTime1 = System.currentTimeMillis();
System.out.println( "ss1:" + (endTime1-startTime1));
二、String类的几个方法复习
1.charAt( int index):这个方法是返回字符串的第index位的字符,下标从0开始。返回类型是char。
e.g. str.charAt(3); //返回结果为i
2.codePointAt(int index):返回指定的index处的字符Unicode代码点,下标从0开始。返回类型是int.
e.g. str.codePointAt(3);//返回结果为105
3.codePointBefore(int index):返回指定的index处前一位的字符Unicode代码点,下标从0开始。返回类型是int.
e.g. str.codePointAt(4);//返回结果为105
4.codePointCount(int beginIndex, int endIndex):返回从beginIndex到endIndex范围内的Unicode代码点数量。返回类型是int.
e.g. str.codePointCount(3,4);//返回结果为1
5.compareTo(String otherStr):比较两个字符串,采用字典顺序比较。返回类型为int.
e.g. str.compareTo("a");//返回结果为-24
6.compareToIgnoreCase(String str):比较两个字符串,采用字典顺序比较,忽略大小写。返回类型为int.
e.g. str.compareTo("a");//返回结果为8
7.concat(String str):将参数字符串加到结尾处。返回类型为String.
e.g. str.concat("a");//返回结果为I like you,Java.a
8.contains(CharSequence s):当字符串包含s(字符序列)的时候返回true。返回类型为boolean.
e.g. str.contains("ai");//返回结果为false
9.contentEquals(CharSequence s):比较字符串与s是否相等。返回类型为boolean.
e.g. str.contentEquals("I like you,Java");//返回结果为false
10.contentEquals(StringBuffer s):比较字符串与s是否相等。返回类型为boolean.
11.copyValueOf(char[] data):返回一个字符串。返回类型为String.
e.g. char[] data = {'I',' ','l','i','k','e',' ','y','o','u','.'};
strTest.copyValueOf(data);//返回结果为I like you.
12.copyValueOf(char[] data, int offset, int count):返回字符串,从coffset开始count位字符串。返回类型为String.
13.endsWith(String str):当字符串结尾是str时返回true。返回类型为boolean.
e.g. str.endsWith(".");//返回结果为true
14.equals(Object O):比较字符串跟指定的O.返回类型为boolean.
e.g. str.equals(o.toString());//
15.lastIndexOf(String str):从字符串尾部开始对比子字符串str
16.indexOf(String str):从字符串头部开始对比子字符串str
17.replace(String oldStr,String newStr):替换到原有子字符
18.replaceFirst(String oldStr,String newStr):替换到原有子字符第一次出现时
19.replaceAll(String oldStr,String newStr):替换到原有子字符
20.split(String str):根据str分割原字符串为数组
21.toUpperCase():字符串变大写
22.toLowerCase():字符串变小写
23.emit():与缓冲有关。
原文:http://www.yiibai.com/javaexamples/java_strings.html
Java基础知识系列——String的更多相关文章
- Java基础知识系列——文件操作
对文件进行操作在编程中比较少用,但是我最近有一个任务需要用到对文件操作. 对文件有如下操作形式: 1.创建新的文件(夹) File fileName = new File("C:/myfil ...
- Java基础知识系列——日期
日期类型也是在编程中经常用到的一种数据类型. Java中的日期类型为Date. 另外需要记住三个类: java.text.SimpleDateFormat; java.util.Calendar; j ...
- Java基础知识总结--String、StringBuffer、StringBuilder
1.Java String 类 String类是final类,也即意味着String类不能被继承,并且它的成员方法都默认为final方法.在Java中,被final修饰的类是不允许被继承的,并且该类中 ...
- Java基础知识系列——Exception
异常在编程中使用频率非常非常的高,在Java中异常的基类是Exception. 下面就介绍一下Java中的异常: 1.结构 try{ //捕获try里的异常 }catch( Exception e){ ...
- Java基础知识系列——目录操作
Java对目录操作的许多方法与上一篇文件操作的方法很多是一样的. java.io.File file = new File( "D:\1\2\3\4"); 1.递归创建目录 fil ...
- Java基础知识系列——数组
数组是我们在编程中常用到的一种数据结构. 数组创建有三种方式,以int类型为例: 1.int value[] = new int[]{1,2,3,4,5}; //{}中的是元素 2.int value ...
- JAVA基础知识系列---进程、线程安全
1 相关概念 1.1 临界区 保证在某一时刻只有一个线程能访问数据的简便方法,在任意时刻只允许一个线程对资源进行访问.如果有多个线程试图同时访问临界区,那么在有一个线程进入后,其他所有试图访问临界区的 ...
- Java基础扫盲系列(-)—— String中的format
Java基础扫盲系列(-)-- String中的format 以前大学学习C语言时,有函数printf,能够按照格式打印输出的内容.但是工作后使用Java,也没有遇到过格式打印的需求,今天遇到项目代码 ...
- java基础知识回顾之---java String final类普通方法
辞职了,最近一段时间在找工作,把在大二的时候学习java基础知识回顾下,拿出来跟大家分享,如果有问题,欢迎大家的指正. /* * 按照面向对象的思想对字符串进行功能分类. * ...
随机推荐
- 一起学习KenDo Mobile之一 建立一个简单的移动APP
开发KenDo Mobile的开发工具只要求支持文本编辑即可,当然我自己用VS2013,大材小用. 移动应用程序开发不同于桌面应用程序开发,前者需要在移动设备上部署,后者使用台式电脑测试和调试应用程序 ...
- python3+ 模块学习 之 subprocess
subprocess 模块方法: call() check_call() check_output() 以上三个方法用于创建一个子进程,父进程等待子进程结束.若shell = true, 则shell ...
- 2016-11-10:win7下VMware虚拟机中CentOS6.5网络配置
在win7环境下,使用桥接和NAT模式配置VMware虚拟机网络,实现宿主机与虚拟机以及虚拟机通过宿主机网卡访问互联网. 1 配置VMware虚拟网络编辑器 VMnet0 桥接模式 VMnet1仅主机 ...
- dede文章调用时过滤调 body里面的style属性和值
dede 发布文章的时候会在里面的标签中添加一些style 属性,现在改网站想去掉这些属性和里面的值,因为文章太多所以就用下面的方法 \include\arc.listview.class.php 在 ...
- 两种open()函数
C语言中文件操作函数中,open()有两种形式: 一种形式是有两个参数open2: 另一种形式是有三个参数open3: 共有的参数有两个,第一个是"被打开文件的路径",第二个是&q ...
- 解决ASP.Net第一次访问慢的处理(IIS8)
本篇经验以IIS8,Windows Server 2012R2做为案例. IIS8 运行在 Windows Server 2012 and Windows 8 版本以上的平台上. IIS中应用程序池和 ...
- ping命令
ping命令能够用于判断一个主机是否可达或者是否存活.它的工作原理就像潜水艇的探测原理一样.该命令通过向目标计算机发送一个数据包,请求目标计算机回送该数据包以表明自己还存活着.同时该命令还能够知道数据 ...
- Ngnix反向代理react-router配置问题解决方法
项目以react router实现,用ngnix做反向代理的时候出现404找不到页面,有两种解决方法. 第一种 将<Route path="*" component={No ...
- Mathematica(MMA)闪电入门系列 目录与说明
Mathematica(MMA)闪电入门系列 入口 本文起到目录作用,点击以下链接,可以打开各章: 一.MMA概述二.表操作三.函数与递归四.表达式的计算五.过程式编程和调试技巧六.图形七.程序包 ...
- 《全唐诗》的sqlite3数据库
下载地址: http://pan.baidu.com/s/1b2mE54quantangshi.db是sqlite3数据库,包括2张表.index表:volume 列(整数,主键) 表示卷号,从1到9 ...