黑马程序员----------常用API
来源:互联网 发布:生成全排列的递归算法 编辑:程序博客网 时间:2024/05/01 01:58
------- android培训、java培训、期待与您交流! ----------
常用API
API: 是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
String 字符串:java中用String类进行描述。对字符串进行了对象的封装。这样的好处是可以对字符串这种常见数据进行方便的操作。对象封装后,可以定义N多属性和行为。
定义字符串对象:String str1=”abc”;
字符串一旦被初始化就不会再改变,被存放在常量池中
String str2=new String(“abc”) 其中有两个对象,一个是new出来的,一个是“abc”
Syso(str1==str2)//false ==是比较的地址值
Syso(str1.equals(s2))//true equals比较的是内容
字符串的方法
构造方法:String s1 = newString();//创建了一个空内容的字符串。
String s2 = null;//s2没有任何对象指向,是一个null常量值。
String s3 = "";//s3指向一个具体的字符串对象,只不过这个字符串中没有内容。
String s4 = new String("abc");//一般在定义字符串时,不用new。
String s5 = "abc"; 一般用此写法
new String(char[]);//将字符数组转成字符串。
newString(char[],offset,count);//将字符数组中的一部分转成字符串。
一般方法:获取长度int len=str.length();
获取指定位置字符char ch=str.charAt(1)
获取角标 int index=str.indexOf()
将字符串转成数组 char[] chs=strs.tocharArray转成字符数组
将基本数据类型转成字符串 strs.valueof(int)
字符串比较大小compareTo int num= "a"comparTo("b")>0
例:对字符串比较
String[] strs={"fbc","buc","ega","req"}
for(int x=0;x<strs.length;x++){
syso(strs[x]) }
public static void sort(String strs){
for(intx=0;x<strs.length;x++){
for(int y=x+1;y<strs.length;y++){
if((strs[x].comparTo[y])>0)
swap(strs,x,y)}}}
字符串缓冲区StringBuffer:构造一个其中不带字符的字符串缓冲区,初始容量为16个字符。
特点是:可以对字符串进行操作,是一个容器,长度可变,可以接受任意类型的数据
最后都会转成字符串
容器一般都有固定的方法:
StringBuffer sb=new StringBuffer()
添加:sb.append()可以连续追加 sb.insert()在指定位置添加
删除:sb.delect(start,end)删除从开始到结束sb.delectcharAt(4)删除在指定角标的
修改:sb.replace()
查找:sb.indexof()
反转:sb.reverse
StringBulider:方法和StringBuffer一样,用在字符串缓冲区被单个线程使用的时候
StringBuffer和StringBulider的区别:
Stringbuffer线程安全 多线程操作
Stringbuilder线程不安全 单线程效率高
什么时候使用字符串缓冲区:
数据很多,个数无所谓确定,类型无所谓确定,只要最后都转成字符串就使用Stringbuffer
例子:class Test{
publicstatic void main(String[] args) {
Strings1 = "java";
Strings2 = "hello";
method_1(s1,s2);
System.out.println(s1+"...."+s2);//java....hello
StringBuilders11 = new StringBuilder("java");
StringBuilders22 = new StringBuilder("hello");
method_2(s11,s22);
System.out.println(s11+"-----"+s22);//javahello-----hello
}
publicstatic void method_1(String s1,String s2){
s1.replace('a','k');
s1 =s2;
}
publicstatic void method_2(StringBuilder s1,StringBuilder s2){
s1.append(s2);
s1 =s2;
}
}
基本数据类型包装类:将基本数据类型封装成了对象
好处:可以通过对象中的属性和行为操作基本数据
可以实现基本数据类型和字符串之间的转换
关键字 对应的类名
byte Byte
short Short
int Integer
long Long
char Character
long Long
boolean Boolean
float Float
基本数据类型包装类都有xxx.parseXXX方法,character没有
Integer对象
数字格式的字符串转成基本数据类型的方法
Syso(Integer.parstInt("23")+4)//结果为27
将基本数据类型转成字符串
Syso(Integer.toString(3)+8)//结果为38
将整数转换成对象 Integer i=new Integer(4); 或者Integer i=Integer.valueOf(4)
将对象转成整数 Integer i=newInteger(5) int x=i.intValue();
java.lang.System:其中的属性和方法都是静态的
long currentTimeMillis()//返回当前毫秒值
exit();//退出虚拟机
properties getProperties //获取当前属性值
Properties prop=System.Properties//获取系统属性值,并存储到properties集合中
System.setProperties()//给系统属性集添加具体属性
String name=System.getProperties()//获取指定属性的信息
Java.lang.Runtime:类中没有构造方法,不能创建对象
通过Runtim.getRuntime()的方法获取对象
Runtime是使用单例模式进行设计
Class RuntimeDemo{
Main(){Runtimer=Runtime.getRuntime;
process p=r.exec()//括号内运行指定的程序
Thread.sleep(4000);p.destry()//摧毁程序}}
Java.lang.Math:数学上的工具类,该类是final,不允许继承
tatic double ceil(double a) ; //返回大于指定数值的最小整数
static double floor(double a) ; //返回小于指定数值的最大整数
static long round(double a) ; //四舍五入成整数
static double pow(double a, double b) ; //a的b次幂
static double random(); //返回0~1的伪随机数
Java.util.Date:日期类
日期对象和毫秒值得转换:Date d=new Date();long time=d.getTime();
毫秒值和日期对象的转换:long time=48469474545;Date d=newDate();d.setTime(long);
将日期字符串转成日期对象:使用的是DateFormat中的parse()方法
String str=2014/12/5;
DateFormat format=new SimpleDateFormat();括号内可以自定义日期形式
Date d=format.parse(str);
如果不需要自定义日期形式,可以通过DateFormat中的静态工程模式获取已经封装好的模式
Date d=new Date();
DateFormatdf=DateFormat.getDateIntance(DateFormat.LONG)
df.DateFormat.getTimeIntance(DateFormat.LONG,DateFormat.LONG);
String tiem=df.format(d);
将日期对象转成字符串的形式
DateFormat date=newSimpleDateFormat();date.format();对日期对象格式化
Java.util.Calendar:日历类
Calendar c=Calendar.getIntance();//获取日历类的实例对象
c.set(2012,4,1)//自定义年份
Syso(c.get(Calendar.YEAR))//获取年份
日历对象的偏移:c.add(Calendar.YEAE,4)//在现在的年份上加上四年
想要知道某一年的2月有多少天intyear=2012;c.set(year,2,1);c.add(Calendar.DAY_of_MONTH,-1);
- 黑马程序员---常用API
- 黑马程序员----------常用API
- 黑马程序员-----常用API
- 黑马程序员--常用API
- 黑马程序员->常用API (1
- 黑马程序员 Java常用API
- 黑马程序员---常用API对象
- 黑马程序员_常用API
- 黑马程序员_常用API
- 黑马程序员06常用API
- 《黑马程序员》java笔记->常用API
- 黑马程序员_Java常用类API
- 黑马程序员_java中的常用API
- 黑马程序员_Java基础常用API
- 黑马程序员_java常用API之String
- 黑马程序员——常用API
- 黑马程序员-----JAVA常用API、集合
- 黑马程序员——常用API
- 黑马程序员----------多线程
- SharedPreferences具体使用方法及createPackageContext方法(获取其他应用的共享文件)
- 运营活动需求实现
- JAVA程序设计(02.1)-----个税起征点计算
- Debug文件夹下没有.exe文件
- 黑马程序员----------常用API
- HTML5开发Android App 之 Acceleration
- c#基于udp实现的p2p语音聊天工具
- 一编程基础
- uva 301
- Python字典的setdefault()方法
- STM8L15x系列MCU的标准库简介
- 黑马程序员----------集合框架
- 黑马程序员---------IO流File类