一些Java中常用的定义(2)
来源:互联网 发布:极速法术升级数据 编辑:程序博客网 时间:2024/06/05 10:11
数组:数组是一种引用类型;声明的时候不能指定其长度;数组中元素为引用类型的数组中,每一个元素都需要被实例化。
1.静态初始化:定义的同时为数组元素分配空间和赋值;动态初始化:定义和为其分配空间和赋值。
2.type[] var或者type var[]:二维数组的定义也类似。
3.数组的拷贝,由于数组的内存区域一般都是连续的,因此适合拷贝。用arraycopy()方法进行。
4.main 函数里面的String args[]数组可用于读取命令行的输入。
5.字符串转到相应的基本数据类型,使用包装类。例如:Double.parseDouble().方法将字符串类型转化为double类型。
学会了使用数组,数据结构的一些算法就方便去实现。
Java中的常用类
1.String类,字符串类型,代表的是不可变的字符串系列。常用的方法:valueOf()转换数据类型;split()对字符串进行分割;tochararray()可以将字符串转化为数组。
2.StringBuffer类,和String类似,但是其可以对字符串进行改变。常用的方法:append()添加,insert()插入。
3.一些基础类型的包装类。Interger,Double,Boolean等。
4.Math类主要是用于数学计算。Random()产生随机数。toDegress()和toRadians用于弧度和度数的变化。
5.File类
6.枚举类型:注意和C语言里面的差别。
所有类的用法基本上都可以用API文档进行查询。
Java API所提供的一系列类的实例,用于在程序中存放对象。通常需要引入:java.util.*包。
1. Collection 接口,下面包括两个子接口set和list,其中set表示没有顺序、不可重复的;而list则表示有顺序、可重复的。容器类在调用remove、contains等方法时需要比较对象是否相等,这回涉及到对象类型的equals和hashcode方法,以实现自定义的对象相等的规则。
2. Map接口,定义了 存储键值映射对的方法,key-value。
3. Iterator 接口,所有实现了Collection接口的容器类都有一个iterator方法用以返回一个实现了Iterator接口的对象。Iterator对象作为一个迭代器,用以方便对容器内的元素实现遍历操作。包括hasNext()、next()、remove()方法等。
4. Set接口是Collection的子接口,Set接口没有提供额外的方法,但实现Set接口的容器类中的元素是没有顺序的,而且不可以重复。包括HashSet和TreeSet。
Set s1= new HashSet();
Set s2 = new HashSet();
s1.add("a");
s1.add("b");
s1.add("c");
s2.add("a");
s2.add("b");
s2.add("d");
Set sn = new HashSet(s1);
sn.retainAll(s2);
Set su = new HashSet(s2);
su.addAll(s1);
System.out.println(sn);
System.out.println(su);
5. List接口是Collection的子接口,实现List接口的容器类中的元素是有顺序的,且不可以重复。用法举例。
List l = new LinkedList();
for(int i = 0;i<9;i++){
l.add("a"+i);
}
System.out.println(l);
Collections.sort(l);
System.out.println(l);
Collections.shuffle(l);
System.out.println(l);
Collections.reverse(l);
System.out.println(l);
System.out.println(Collections.binarySearch(l,"a5"));
6. Collections类,其中定义了一些排序方法,sort()排序,shuffle()随机,reverse()逆序,fill(),copy(),binarySearch()二分法查找。
7. Comparable接口
只有一个compareTo()方法,实现了Comparable接口的类通过实现CompareTo方法而确定该类对象的排列方式。
8. 如何选择数据结构。
Array:读快改慢,linked:改快读慢,Hash:介于两者之间。
9. Map接口
实现Map接口的类用来存储键值对,它的实现类有HashMap和TreeMap。
Map类中存储的键值对通过键来标示,所以键值不能重复。
接口中一些常用的方法:put(),get(),rmove(),containsKey(),containsValue(),size(),isEmpty(),putAll(),clear().
10. Auto_boxing/Unboxing,在合适的时机打包解包,自动将基础类型转换为对象,自动将对象转换为基础类型。
11. 泛型:在定义集合的同时定义集合中对象的类型。可以在定义Collection的时候指定,也可以在循环的时候用Iterator指定。增强程序的稳定性和可读性。
字节流
字符流
输入流
InputStream
Reader
输出流
OutputStream
Writer
1.InputStream :read(),close(),skip()跳过n个字节。
2.OutputStream:write(),close(),flush()将缓冲区的数据全部写入到目的地。
3.Reader:read(),close(),skip()
4.Writer:write(),close(),flush().
5.缓冲流:BufferedIO,其中包含一个readLine()按行读取的方法。
6.转换流:InputStreamReader和OutputStreamWriter
7.数据流:DataInputStream和DataOUtputStream,套接使用。
8.Print流:不会抛出异常,自带flush()功能。PrintWriter和PrintStream。Setout(),指定输出位置。
9.Object流:直接将Object写入或读出。
10.接口 Serializable 接口序列化,标记性接口。Transient透明化。Externalizable接口。
1.线程 :程序的不同的执行路径。Thread类实现。导入java.lang.Thread.*;
有两种实现线程的方式:实现Runnable()接口和从Thread类继承。其中优先选择前者。
避免了java的单继承特性带来的局限,可以使用多个线程共享相同的资源,以达到资源共享的目的。
2.线程的状态转换。(DOS窗口是单线程)
Sleep()静态方法,join()合并线程。Yield()让出CPU给其他线程执行机会。
可以重新定义线程的优先级。Normal_PRIORITY.
同一个线程对象可以起两个主线程。
3.线程同步
Synchronized 可以用来锁定当前对象:synchronized(this){}或者直接在方法中使用。
一些常用的方法,
getName()获取线程的名字。setName()设置线程的名字。
isAlive()测试线程是否已经启动而且正在运行。
setDaemon()设置守护线程,例如java的垃圾回收机制。线程包括:用户线程和守护线程。
Join()联合线程,控制某一线程的运行。
Thread.interrupt()设置中断状态为ture
Thread.isInterrupted()获取线程的中断状态。
4. 打印一个对象 ,需重写ToString()方法。
- 一些Java中常用的定义(2)
- 一些Java的常用定义
- HTML <style>中一些常用的定义格式
- IOS开发中常用的一些宏定义
- 一些常用的定义文件
- 一些常用的宏定义
- 一些常用的宏定义
- 一些常用的宏定义
- 一些常用的宏定义
- 常用的一些宏定义
- java中常用的一些方法(一)
- java中常用的一些方法
- java中常用的一些方法
- java中常用的一些方法
- Eclipse中Java的一些常用快捷键
- JAVA中一些常用的方法
- java中常用的一些方法
- Java中常用的一些方法
- 没事写个冒泡排序
- Windows 系统安装 Apache 服务器
- 共同学习Java源码--常用数据类型--String(十六)
- 【hdu1358】Period——KMP
- java学习笔记(从搭建环境到入门java)
- 一些Java中常用的定义(2)
- 记一次折腾之旅(兼 Classias 安装教程)
- Android API Guides---Toggle Buttons
- Oracle数据库--实用操作(6)触发器
- java枚举使用详解
- 谈谈你对面向对象的理解
- PHP编译执行Java源文件并重定向输出
- linux下的Redis+spring+struts2实现点赞功能(八)
- 头文件