Java精选笔记_Java API
String类
String类的初始化
String是一个特殊的对象,一旦被初始化,就不会被改变
1、使用字符串常量直接初始化一个String对象
String s1="abc";
//s1是一个类类型变量,“abc”是一个对象。
2、使用String的构造方法初始化字符串对象
String s2=new String("abc");
s1和s2的区别:
s1在字符串常量池中创建了一个abc字符串
s2在堆中创建了两个对象一个是默认对象一个是字符串对象。
==和equals的区别:
==比较的是地址,equals比较的是内容。
String类的常见操作
获取
获取字符串长度
int length();
根据位置获取字符
char charAt(int index);
根据字符获取在字符中的位置
int indexof(int ch) 返回的是ch在字符串中第一个出现的位置
int indexof(int ch,int FromIndex) 从fromIndex指定位置开始,获取ch在字符串中出现的位置
int indexof(String str); 返回的是str在字符串中第一个出现的位置
int indexof(String str,int FromIndex) 从fromIndex指定位置开始,获取str在字符串中出现的位置
反向索引一个字符出现的位置。
int lastindexof(int ch)
int lastindexof(int ch,int FromIndex) 从fromIndex
int lastindexof(String str);
int lastindexof(String str,int FromIndex)
获取字符串中的一部分字符串,也叫子串。
String subString(int beginindex,int endindex);
String subString(int beginindex);
判断
两个字符串是否相同
equals(Object obj)
equalsIgnoreCase(String str)
字符串中是否包含某个字符串contains(String str)
两个字符串是否以指定字符串开头或结尾
boolean Startswith(String);
boolean endswith(String);
字符串是否为空 boolean isEmpty();
字符串转换
将字符串变成字符串数组String[] split(String regex);
将字符串变成字符数组char[] toCharArray();
将字符串变成字节数组byte[] getBytes();
将字符串数组变成字符串
构造函数 String(char[])
String(char[],offset,count) 将字符数组中的一部分转成字符串。
静态函数 static String copyValueof(char[])
static String copyValueof(char[],offset,count) 将字符数组中的一部分转成字符串。
将字符串的字母大小写转换
String toUppercase();大写
String toUppercase();小写
将字符串的内容替换
String repalce(char oldch,char newch);
String repalce(String s1,String s2);
将字符串两端空格去掉 String trim();
将字符串进行连接 String concat(String);
比较
compareTo(); 小返回负数 等返回0 大返回正数
StringBuffer类
是个字符串缓冲区对象,用于存储数据的容器
StringBuffer类似一个字符容器,当在其中添加或删除字符时,并不会产生新的StringBuffer对象。
特点
1.长度是可变的
2.可以存储不同类型数据
3.最终要转换成字符串使用
4.可以对字符串进行修改
功能
1.添加
append(data) 将指定数据添加到已有数据的结尾处
insert(位置,字符串) 将数据插入到指定位置
2.删除
delete(start,end);
删除缓冲区中的数据,包含start不包含end
deleteCharAt(ine index); 删除指定位置元素
StringBuffer.delete(0,sb.length());
3.查找
char charAt(index);
int indexof(string);
int lastindexof(String);
4.修改
StringBuffer replace(start,end.String)
void setCharAt(index,char)
setlength() 设置长度
5.反转
StringBuffer reverse();
6.将缓冲区中的指定数据存储到字符数组中
void getChars(int srcBegin,int srcEnd,char[] dst,int dstbegin)
StringBuilder 线程不同步的,StringBuffer是同步的。建议使用StringBuilder效率快。
String类和StringBuffer类的区别
1、String类表示的字符串是常量,一旦创建后,内容和长度都是无法改变的。StringBuffer表示字符容器,其内容和长度都可以随时修改。在操作字符串时,如果该字符串仅用于表示数据类型,则使用String类即可,但是如果需要对字符串中的字符进行增删操作,则使用StringBuffer类。
2、String类覆盖了Object类的equals()方法,而StringBuffer类没有覆盖Object类的equals()方法
3、String类对象可以用操作符“+”进行连接,而StringBuffer类对象之间不能
System类
是hashtable 的子类。用map的方法去除该类集合中的元素。该集合中存储的都是字符串,没有泛型定义。
String calue=(String)prop.get(obj);
System.out.println(obj+":"+value);
在系统中自定义一些特有信息
System.setProperty("mykey","myvalue");
System类定义了一些与系统相关的属性和方法,它所提供的属性和方法都是静态的,因此,想要引用这些属性和方法,直接使用System类调用即可。
preperties();获取当前系统的全部信息,会返回一个Properties对象,以键值对存在
Properties prop =new System.getProperties();
currentTimeMillis();当前时间,该方法返回一个long类型的值,该值表示当前时间与1970年1月1日0点0分0秒之间的时间差,单位是毫秒,习惯性地被称作时间戳。
arraycopy(Object src,int srcPos,Object dest,int destPos,int length)
arraycopy()方法用于将一个数组中的元素快速拷贝到另一个数组。其中的参数具体作用如下:
src:表示源数组
dest:表示目标数组
srcPos:表示源数组中拷贝元素的起始位置
destPos:表示拷贝到目标数组的起始位置
length:表示拷贝元素的个数
需要注意的是,在进行数组复制时,目标数组必须有足够的空间来存放拷贝的元素,否则会发生角标越界异常。
Runtime类
static Runtime getRuntime();
process p= r.exec("*.exe") //执行文件
p.destory(); //杀掉进程。
使用了单例设计模式。
Runtime类用于表示虚拟机运行时的状态,它用于封装JVM虚拟机进程。每次使用java命令启动虚拟机都对应一个Runtime实例,并且只有一个实例,因此该类采用单例模式进行设计,对象不可以直接实例化。若想在程序中获得一个Runtime实例,只能通过以下方式:
Runtime run = Runtime.getRuntime();
由于Runtime类封装了虚拟机进程,因此,在程序中通常会通过该类的实例对象来获取当前虚拟机的相关信息。
Math类
Math类是数学操作类,提供了一系列用于数学运算的静态方法,包括求绝对值、三角函数等。Math类中有两个静态常量PI和E,分别代表数学常量π和e。
ceil(); 返回大于参数的最小整数
floor(); 返回小于参数的最大整数
round(); 返回四舍五入
pow(a,b); a的b次方
random();
大于等于0.0且小于1.0的伪随机double值
Random类
它可以在指定的取值范围内随机产生数字
Random类提供了更多的方法来生成各种伪随机数,不仅可以生成整数类型的随机数,还可以生成浮点类型的随机数
包装类
基本数据类型 引用数据类型
byte Byte
short Short
int Integer
long long
float Float
char Character
boolean Boolean
double Double
用于基本数据类型和字符串类型之间的转换
包装类和基本数据类型在进行转换时,引入了装箱和拆箱的概念,其中装箱是指将基本数据类型的值转为引用数据类型,反之,拆箱是指将引用数据类型的对象转为基本数据类型
基本数据类型转换成字符串
基本数据类型+""
基本数据类型.toString(基本数据类型值)
字符串转换成基本数据类型
***.Parse***(***类型字符串);
进制转换
十进制--其他进制
toBinaryString();二进制
toOctolString();八进制
tohexString();十六进制
其他进制--十进制
parseInt(string,进制);
注意
包装类都重写了Object类中的toString()方法,以字符串的形式返回被包装的基本数据类型的值。
除了Character外,包装类都有valueOf(String s)方法,可以根据String类型的参数创建包装类对象,但参数字符串s不能为null,而且字符串必须是可以解析为相应基本类型的数据,否则虽然编译通过,但运行时会报错。
除了Character外,包装类都有parseXXX(String s)的静态方法,将字符串转换为对应的基本类型的数据。
Data类
获取当前时间 Date date=new Date();
将模式封装到 SimpleDateformat对象中 自定义风格
SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss");
调用format方法让模式格式化指定Date对象
String time=sdt.format(d);
Calendar类
Calendar类是一个抽象类,不可以被实例化,在程序中需要调用其静态方法getInstance()来得到一个Calendar对象,然后调用其相应的方法。
Calendar c = Calendar.getInstance();
c.get(Calendar.Year); //获取年
c.get(Calendar.Month); //获取月
c.get(Calendar.DayofMonth); //获取日
c.get(Calendar.DayofWeek); //获取星期
更改日期 c.add(Calendar.字段,12)
获取任意年的二月
c.set(year,2,1)
//获取默认一年的三月1日
c.add(Calendar.Day_of_Month,-1)
DateFormat类
DateFormat类专门用于将日期格式化为字符串或者将用特定格式显示的日期字符串转换成一个Date对象。
DateFormat是抽象类,不能被直接实例化,但它提供了静态方法,通过这些方法可以获取DateFormat类的实例对象,并调用其它相应的方法进行操作
DateFormat中还提供了一个parse(String source)方法,能够将一个字符串解析成Date对象,但是它要求字符串必须符合日期/时间的格式要求,否则会抛出异常。
SimpleDateFormat类
该类是DateFormat类的子类。SimpleDateFormat类可以使用new关键字创建实例对象,它的构造方法接收一个格式字符串参数,表示日期格式模板
Java精选笔记_Java API的更多相关文章
- Java精选笔记_Java编程基础
Java的基本语法 Java代码的基本格式 修饰符 class 类名 { 程序代码 } 一个Java源文件只定义一个类,不同的类使用不同的源文件定义:将每个源文件中单独定义的类都定义成public ...
- Java精选笔记_Java入门
Java概述 什么是Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言 JavaSE标准版 是为开发普通桌面和商务应用程序提供的解决方案 JavaEE企业版 是为开发企业级应用程序提供的解 ...
- Java学习笔记之---API的应用
Java学习笔记之---API的应用 (一)Object类 java.lang.Object 类 Object 是类层次结构的根类.每个类都使用 Object 作为超类.所有对象(包括数组)都实现这个 ...
- Java学习笔记--反射API
反射API 1.反射API的介绍 通过反射API可以获取Java程序在运行时刻的内部结构.比如Java类中包含的构造方法.域和方法等元素,并可以与这些元素进行交换. 按照 一般地面向对象的设计 ...
- Java精选笔记_国际化
国际化 什么是国际化 指软件在开发时就应该具备支持多种语言和地区的功能,当应对不同国家和地区的用户访问,针对不同国家和地区的用户,提供相应的.符合来访者阅读习惯的页面和数据. 由于国际化interna ...
- Java精选笔记_自定义标签
自定义标签 自定义标签入门 什么是自定义标签 自定义标签可以有效地将HTML代码与Java代码分离,从而使不懂Java编程的HTML设计人员也可以编写出功能强大的JSP页面 JSP规范中定义了多个用于 ...
- Java精选笔记_JSTL(JSP标准标签库)
JSTL(JSP标准标签库) JSTL入门 JavaServer Pages Standard Tag Library:JSP标准标签库 在JSP中可以通过Java代码来获取信息,但是过多的Java代 ...
- Java精选笔记_文件上传与下载
文件上传与下载 如何实现文件上传 在Web应用中,由于大多数文件的上传都是通过表单的形式提交给服务器的,因此,要想在程序中实现文件上传的功能,首先得创建一个用于提交上传文件的表单页面. 为了使Serv ...
- Java精选笔记_Servlet事件监听器
Servlet事件监听器 概述 在程序开发中,经常需要对某些事件进行监听,如监听鼠标点击事件.监听键盘按下事件等,此时就需要使用事件监听器. 事件监听器用于对程序中发生的事件进行监听,在监听的过程中会 ...
随机推荐
- 使用tesseract-ocr破解网站验证码
首先我得承认,关注tesseract-ocr, 是冲着下面这篇文章的噱头去的,26行groovy代码破解网站验证码 http://www.kellyrob99.com/blog/2010/03/14/ ...
- 基于jQuery左右滑动切换图片代码
分享一款基于jQuery左右滑动切换图片代码.这是一款基于jQuery实现的左右滑动切换焦点图代码.效果图如下: 在线预览 源码下载 实现的代码: <div class="v_ou ...
- HDOJ 1814 Peaceful Commission
经典2sat裸题,dfs的2sat能够方便输出字典序最小的解... Peaceful Commission Time Limit: 10000/5000 MS (Java/Others) Mem ...
- 获取本地IP和mac等信息
1获取mac protected string getHostMacName() { string mac = ""; ManagementClass mc; mc = new M ...
- java方法——重载2
什么是Java方法重载 方法重载的定义 1 对于同一个类,如果这个类里面有两个或者多个重名的方法,但是方法的参数个数.类型.顺序至少有一个不一样,这时候局构成方法重载. END 方法重载示例 1 pu ...
- kettle7.1无法从Mongo中读取数据
今天使用kettle读取mongo数据库时,刚开始一直无法读取数据: 在配置项中偶然选择了一个nearest然后成功了,麻蛋. 然后百度查询了下Read Reference是干嘛的,原来是读取源的模式 ...
- [LintCode]转换字符串到整数
问题描述: 实现atoi这个函数,将一个字符串转换为整数.如果没有合法的整数,返回0.如果整数超出了32位整数的范围,返回INT_MAX(2147483647)如果是正整数,或者INT_MIN(-21 ...
- kcp协议详解
kcp协议是传输层的一个具有可靠性的传输层ARQ协议.它的设计是为了解决在网络拥堵情况下tcp协议的网络速度慢的问题.kcp力求在保证可靠性的情况下提高传输速度.kcp协议的关注点主要在控制数据的可靠 ...
- msysgit使用方法
安装好后运行"Git Bash",出现命令框. 输入 ssh-keygen -t rsa -C “your_email@youremail.com” 会提示SSH Public K ...
- Anaconda之常用命令
1.查看环境列表:conda-env list 2.删除环境:conda env remove -n tf1.2 3.创建指定python的环境:conda create -n tf1.2 pyth ...