Java入门笔记3_Datastructure

4. Data Structure
4.1 Array
4.1.1 基本概念
数组在Java中是对象,因此使用它之前需要实例化。数组中的元素可以是基本元素,也可以是对象,但是同一数组中元素的类型必须是相同的。
数组中存放的对象不是对象本身,而是对象的引用。
4.1.2 数组申明与实例化
(1) String difWords[]; Point hits[];
(2) String[] difWords[]; Point[] hits; 常用于方法的返回类型;
(3) String[] names = new String[10]; int[] temps = new int[10];
(4) String[] names = {"jalapeno", "anaheim", "serrano"}
(5) int coords[][] = new int[12][12];
4.1.3 数组的属性与方法
数组是对象,因些它有属性与方法,如length属性等。
4.2 Enumeration
Enumeration是个接口,它提供了一些标准的方法用于访问其中的元素,这些方法有:
(1) hasMoreElement():判断是否有其它元素
(2) nextElement():返回下来元素,如果没有下来元素,使用该方法会抛出NoSuchElementException异常;
4.3 BitSet
BitSet在表示一组布尔值标志时比较方便,它可以对bit进行访问,而不需要使用位操作符:
BitSet bits = new BitSet(4);
定义了长度为4个bit的bit set,我们至少可以使用以下几个方法对这些bit位进行操作:
(1) bits.set(index):将第index个bit设为1;
(2) bits.clear(index):将第index个bit设为0;
(3) bits.get(index):返回第index个bit的值;
(4) bits.size():用于返回bit set的长度;
(5) xor(BitSet set):与指定bit set进行Xor操作;
(6) 还有其它一些操作见java.util包
4.4 Vector
Vector与Array的概念类似,但是Array的长度不能自动增长,但Vector的长度可以自动增加,当Vector长度不够时,它就会自动增长,而且可以指定每次自动增长的长度,如:
Vector v = new Vector(20,5);
表示新建一个Vector对象,它的初始长度为20,即可以容纳20个元素,如果元素个数超过20个时,每次增加5个元素的容量,即第一次增长时变为25,第二次增长时变以30。
Vector中的方法详见java.util包
4.5 Stack
Stack是一个典型的数据结构,采用先进后出的原则。它有几个重要的方法:
(1) pop;
(2) push(Object);
(3) empty():清空

时间: 2024-09-20 07:39:02

Java入门笔记3_Datastructure的相关文章

Java入门笔记1_HelloWorld

1. 说明本文档是Java入门学习笔记,本文档的所有例子都在window xp下编辑成功,即默认操作系统为window xp,并且认为JDK已成功安装.如有不当之处,请一定指出(email: 828033@tzenet.com),共同进步.本文档不介绍面向对象的基本思想,只记录与Java有关的内容.2. Hello World按惯例写一个hello world作为Java学习的入门.打开文本编辑器,输入以下代码:class HelloWorld { public static void main

Java入门笔记6_线程

1. 多线程1.1 创建线程类在Java中可以简单的从Thread类中继承创建自己的线程类:public class MyFirstThread extends Thread { public void run() { . . .}}说明:(1) Thread类位是java.lang包中,所以可以不用显示import:(2) 从Thread类中继承下来的类最好重载run()方法,以运行需要的代码:可以按以下方法实例化并运行线程:MyFirstThread aMFT = new MyFirstTh

Java入门笔记5_异常

1. 异常/错误1.1 异常处理的基本结构异常处理的基本结构如下:try { someReallyExceptionalMethod();} catch (NullPointerException n) { // a subclass of RuntimeException . . .} catch (RuntimeException r) { // a subclass of Exception . . .} catch (IOException i) { // a subclass of E

Java入门笔记7_Stream

1. Streams及I/OStream就是信息源与目的地之间的通信路径,这里的信息源可以是文件.内存.网络等.Streams主要分为input及output Stream.1.1 InputStream类类InputStream处于Input stream类层次的最顶层,它主要具有以下几种方法:1.1.1 read方法read方法用于从指定的输入流读取以字节为单位的数据,第一次从流的开始位置开始读取,以后每次从上次的结束部位开始读取,即自动实现了位移.read方法有以下三种形态:(1) int

Java入门笔记9_Socket

1. Client/Server NetworkingJava通过socket来完成它所有的网络底层的通讯,socket是一种通讯的通道,通过它可以将数据通过特定的端中发送及接收.Java中的socket可以分成二大类:(1) Datagram Sockets:数据包socket:(2) Stream Sockets:流socket:1.2 Datagram SocketDatagram socket使用UDP来实现数据通讯,因此它不能保证数据能够到达目的地,但是由于它不需要专用的网络链接,所以

Java入门笔记8_JavaTools

1. Java tool1.1 runtime interpreterJava runtime interpreter语法如下:java Options Classname Arguments如果类使用了包,那么Classname应包含包的名称.下面介绍Options的可选取项:(1) -debug:以deug的模式运行interpreter,它允许也jdb(Java调试器)一起使用:(2) -checksource:打开interpreter时会检查源文件即.java文件和.class文件的日

Java入门笔记4_访问控制和包

1. Java中的访问控制 表1-1 可见/访问性 public protected package private在同一类中 yes yes yes Yes同一包中 yes yes yes no不同包中 yes No No No同一包的子类中 yes yes yes No不同包的子类中 Yes Yes No No 说明:(1) 在java中有public.protected.private三种显示的修饰符用于控制可见性,package不是显示的修饰符,它是隐含的,即如果在类.变量等前没加显示的

MongoDB快速入门笔记(八)之MongoDB的java驱动操作代码讲解_mariadb

MongoDB的Java驱动是线程安全的,对于一般的应用,只要一个Mongo实例即可,Mongo有个内置的连接池(池大小默认为10个). 下面代码给大家介绍MongoDB的java驱动操作,具体代码如下所示: import java.util.ArrayList; import java.util.List; import java.util.regex.Pattern; import org.bson.Document; import com.mongodb.MongoClient; impo

MongoDB快速入门笔记(四)之MongoDB查询文档操作实例代码_MongoDB

MongoDB简介 MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. 下面给大家介绍MongoDB查询文档操作的实例 先把student删除,再重新插入数据 > db.student.drop() true > db.student.insert([{ "_id" : 1, "