网站建设资讯

NEWS

网站建设资讯

java链式风格代码 Java代码风格

如何应用Java的链式方法调用

StringBuffer就可以简单的描述该方法使用方式!

公司主营业务:网站建设、成都网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出涞源免费做网站回馈大家。

写个小例子吧,看一眼就明白怎么回事了!

因为StringBuffer的append这个方法每调用一次,返回依然还是StringBuffer这个容器本身对象,所以可以继续调用!当然有的类的方法也可以这么调用!

这只是一个小案例,用来解释是怎么回事,链式用的地方太多了!

java多线程添加学生 用链式结构怎么写

Java队列的链式存储结构及实现:

类似于使用链式结构保存线性表,也可以采用链式结构来保存队列的元素,采用链式存储结构的队列也被称为链队列。

对于链队列而言,由于程序需要从rear端添加元素,然后从front端删除元素,因此考虑对链队列增加front、rear两个引用变量,使他们分别指向链队列的头、尾两个节点。

1、插入队列

对于链队列而言,插入操作的实现非常简单,只要创建一个新节点,让原rear节点的next指向新节点,在让rear指向新节点即可。

2、移除队列

对于链队列而言,删除操作的实现也是非常的简单,只要将原front节点指向原front节点的next节点,当然不要忘记释放原front节点的引用。

JAVA集合中的队列:

从JDK

1.5开始,java的集合框架提供了一个Queue接口,该接口代表了一个队列。实现该接口或者实现继承了该接口的类可以当做队列来使用。Queue里包含了 6

个方法,用于代表队列

所包含的3个标志性方法,如下所示:

(1)插入:在rear端插入元素。

(2)移除:在front端删除元素。

(3)访问:在front端访问元素。

JDK提供的工具类非常强大,它分别代表线性表、队列、栈三种数据结构提供了两种实现:顺序结构和链式结构。虽然LinkedList工具类的功能非常强大,既可以作为线性表来使用、又可以作为队列来使用,还可作为栈来使用,但对大部分程序而言,使用Arraylist和ArrayDeque时性能可能比LinkedList更好。

链式编程对编程有什么好处吗,java的

普通:

1:维护性强

2:对方法的返回类型无要求 imprisonment:void-Type

3:对程序员的业务要求适中

链式:

1:编程性强

2:可读性强

3:代码简洁

4:对程序员的业务能力要求高

求java 单链表基本操作的实现

/*

注意:链表的结点数量用size表示,结点的位置为0~size-1

*/

import java.util.Scanner;

public class Test7 {

public static void main(String[] args) {

try{

LinkList list = new LinkList();

Integer value;

int pos = 0;

Scanner input = new Scanner(System.in);

String choice = null;

//测试A

while(true){

System.out.print("请输入待插入结点的值(x或X退出):");

choice = input.next();

if(choice.toUpperCase().equals("X")){

break;

}

value = Integer.valueOf(choice);

if(list.addAt(pos, value) == true){

System.out.println("插入值为 " + value + " 的结点到当前链表成功!");

pos++;

}

else{

System.out.println("插入结点失败!");

}

}

System.out.print("当前链表所有结点:");

list.listAll();

//测试B

while(true){

System.out.print("请输入待查询结点的值(x或X退出):");

choice = input.next();

if(choice.toUpperCase().equals("X")){

break;

}

value = Integer.valueOf(choice);

pos = list.findByValue(value);

if(pos == -1){

System.out.println("当前链表中不存在值为 " + value + " 的结点");

}

else{

System.out.println("值为 " + value + " 的结点在当前链表中的位置为 " + pos);

}

}

//测试C

while(true){

System.out.print("请输入待删除结点的位置[0~" + (list.getSize()-1) + "](x或X退出):");

choice = input.next();

if(choice.toUpperCase().equals("X")){

break;

}

pos = Integer.valueOf(choice);

if(list.removeAt(pos) == true){

System.out.println("删除当前链表中 " + pos + " 位置的结点成功!");

}

else{

System.out.println("删除结点失败!");

}

}

System.out.print("当前链表所有结点:");

list.listAll();

}

catch(Exception e){

e.printStackTrace();

}

}

}

/**

* 链表结点类

*/

class Node{

private Object data; //链表结点的数据域

private Node next; //链表结点的指针域,指向直接后继结点

public Node(){

data = null;

next = null;

}

public Node(Object data, Node next){

this.data = data;

this.next = next;

}

public Object getData(){

return this.data;

}

public void setData(Object data){

this.data = data;

}

public Node getNext(){

return this.next;

}

public void setNext(Node next){

this.next = next;

}

}

/**

* 链表类

*/

class LinkList{

private Node head = null; //头结点指针

private int size = 0;

public LinkList(){

head = new Node();

size = 0;

}

//在i位置插入元素elem

public boolean addAt(int i, Object elem) {

if(i 0 || i size){

return false;

}

Node pre,curr;

int pos;

for(pre=head; i0 pre.getNext()!=null; i--,pre=pre.getNext());

curr = new Node(elem, pre.getNext());

pre.setNext(curr);

size++;

return true;

}

//删除i位置的元素

public boolean removeAt(int i) {

if(i 0 || i = size){

return false;

}

Node pre,curr;

for(pre=head; i0 pre.getNext()!=null; i--,pre=pre.getNext());

curr = pre.getNext();

pre.setNext(curr.getNext());

size--;

return true;

}

//根据值value查询结点是否存在,若存在返回位置,否则返回-1

public int findByValue(Object value){

Node curr;

int pos;

for(pos=0,curr=head.getNext(); curr!=null; pos++,curr=curr.getNext()){

if(curr.getData().toString().equals(value.toString())){

break;

}

}

if(curr==null){

return -1;

}

return pos;

//return (curr!=null ? pos : -1);

}

public int getSize(){

return size;

}

public boolean isEmpty(){

return (size==0);

}

public void listAll(){

for(Node curr=head.getNext(); curr!=null; curr=curr.getNext()){

System.out.print(curr.getData() + "\t");

}

System.out.println();

}

}

java如何实现链式编程

class A{

public B getB(){

return new B();

}

}

class B{

public a getA(){

return new A();

}

}

public static void main(String args[]){

B b = new A().getB().getA().getB(); //类似于这样的

}


分享名称:java链式风格代码 Java代码风格
链接URL:http://njwzjz.com/article/hpohcj.html