将Java中的链表转换成字符串

将Java中的链表转换成字符串

LinkedList是一种线性数据结构,其中元素不存储在连续的内存位置。

要将链表转换为字符串,我们需要遍历链表,然后将链表的元素附加到字符串变量上。

我们可以使用String类、StringBuilder或StringBuffer将LinkedList转换为字符串。

要附加字符串,我们可以使用String类的“+”运算符和StringBuffer和StringBuilder的append方法。

示例1:

//Java代码将LinkedList转换为String
 
import java.util.Iterator;
import java.util.LinkedList;
import java.util.ListIterator;
 
class GFG {
    public static void main(String[] args)
    {
 
        //创建LinkedList
        LinkedList<Integer> list = new LinkedList<>();
 
        //向linkedList添加元素
        list.add(100);
        list.add(200);
        list.add(300);
        list.add(400);
 
        //使用String Class
        String s = "";
 
        //使用迭代器遍历LinkedList
        Iterator<Integer> iterator = list.iterator();
 
        while (iterator.hasNext()) {
            //使用“+”运算符附加
            s = s + iterator.next() + " ";
        }
 
        //输出结果
        System.out.println(s);
 
        //使用String Buffer
        StringBuffer stringBuffer = new StringBuffer();
 
        //使用增强型for循环遍历LinkedList
        for (Integer integer : list) {
           
            //使用append方法附加字符串
            stringBuffer.append(integer).append(" ");
        }
 
        //输出结果
        System.out.println(stringBuffer);
 
        //使用String Builder
        StringBuilder stringBuilder = new StringBuilder();
 
        //使用ListIterator遍历LinkedList
        ListIterator<Integer> listIterator
            = list.listIterator();
 
        while (listIterator.hasNext()) {
           
            //使用append方法附加字符串
            stringBuilder.append(listIterator.next())
                .append(" ");
        }
 
        //输出结果
        System.out.println(stringBuilder);
    }
}

输出

100 200 300 400 
100 200 300 400 
100 200 300 400 

示例2: 在这个例子中,我们将使用一个用户定义的类。

// Java程序-将LinkedList转换为String
 
import java.util.Iterator;
import java.util.LinkedList;
import java.util.ListIterator;
 
class friendsDetail {
 
    // 类字段
    private String name;
    private String nickName;
    private int id;
 
    //构造方法
    public friendsDetail(String name, String nickName,
                         int id)
    {
        this.name = name;
        this.nickName = nickName;
        this.id = id;
    }
 
    // 名称的getter
    public String getName() { return name; }
 
    // 名称的setter
    public void setName(String name) { this.name = name; }
 
    // ID的getter
    public int getID() { return id; }
 
    // ID的setter
    public void setID(int id) { this.id = id; }
 
    // 昵称的getter
    public String getNickName() { return nickName; }
 
    // 昵称的setter
    public void setNickName(String nickName)
    {
        this.nickName = nickName;
    }
 
    //@Override重写toString方法
    public String toString()
    {
        return "name='"
               + name + '\'' + ", nickName='"
            + nickName + '\'' + ", ID=" + id;
    }
}
 
class Main {
    public static void main(String[] args)
    {
 
        LinkedList<friendsDetail> list = new LinkedList<>();
 
        // 向链表添加元素
        list.add(
            new friendsDetail("Ridhi", "Goda", 202199));
        list.add(
            new friendsDetail("Ananya", "Natki", 202195));
        list.add(new friendsDetail("Ankit", "Chota Don",
                                   202192));
        list.add(
            new friendsDetail("Suraj", "Bhindi", 202147));
        list.add(
            new friendsDetail("Sarthak", "Nagin", 202178));
        list.add(new friendsDetail("Sonika", "Chipkali",
                                   202167));
        list.add(new friendsDetail("Shishya", "Gorilla",
                                   202157));
 
        System.out.println("Using String Class\n");
 
        // 使用String类
        String s = "";
 
        // 使用迭代器遍历链表
        Iterator<friendsDetail> itr = list.iterator();
 
        while (itr.hasNext()) {
            // 使用“+”运算符追加字符串
            s = s + itr.next() + "\n";
        }
 
        // 显示输出
        System.out.println(s);
 
        System.out.println("\nUsing String Buffer\n");
 
        // 使用StringBuffer
        StringBuffer stringBuffer = new StringBuffer();
 
        // 使用增强for循环遍历链表
        for (friendsDetail friendmarks : list) {
            // 使用append方法进行追加
            stringBuffer.append(friendmarks).append("\n");
        }
 
        // 显示输出
        System.out.println(stringBuffer);
 
        // 使用StringBuilder
        System.out.println("\nUsing String Builder\n");
 
        // 使用迭代器遍历链表
        ListIterator<friendsDetail> itr2
            = list.listIterator();
 
        StringBuilder stringBuilder = new StringBuilder();
 
        while (itr2.hasNext()) {
            // 使用append方法进行追加
            stringBuilder.append(itr2.next()).append("\n");
        }
 
        // 显示输出
        System.out.println(stringBuilder);
    }
}

输出:

使用String Class

name='Ridhi', nickName='Goda', ID=202199
name='Ananya', nickName='Natki', ID=202195
name='Ankit', nickName='Chota Don', ID=202192
name='Suraj', nickName='Bhindi', ID=202147
name='Sarthak', nickName='Nagin', ID=202178
name='Sonika', nickName='Chipkali', ID=202167
name='Shishya', nickName='Gorilla', ID=202157


使用String Buffer

name='Ridhi', nickName='Goda', ID=202199
name='Ananya', nickName='Natki', ID=202195
name='Ankit', nickName='Chota Don', ID=202192
name='Suraj', nickName='Bhindi', ID=202147
name='Sarthak', nickName='Nagin', ID=202178
name='Sonika', nickName='Chipkali', ID=202167
name='Shishya', nickName='Gorilla', ID=202157


使用String Builder

name='Ridhi', nickName='Goda', ID=202199
name='Ananya', nickName='Natki', ID=202195
name='Ankit', nickName='Chota Don', ID=202192
name='Suraj', nickName='Bhindi', ID=202147
name='Sarthak', nickName='Nagin', ID=202178
name='Sonika', nickName='Chipkali', ID=202167
name='Shishya', nickName='Gorilla', ID=202157

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程