Android 动态数组

发布于 2024-09-14 00:55:37 字数 701 浏览 6 评论 0原文

我正在通过 Android Pull Parser 技术解析 XML 文件。首先,看一下下面的 XML 文件:

<childs>
    <students>
        <name> hello </name>
        <address> xyz </address>
    </stdents>      

    <students>
        <name> abc </name>
        <address> def </address>
    </stdents>      

</childs>

考虑我正在解析上面的文件。现在,我的问题是我想为名称和地址创建一个单独的数组。因此,在解析时,我想将第一个学生的数据存储在 name[0]address[0] 中,将下一个学生的数据存储在 name[1] 中代码> 和<代码>地址[1]。简而言之,随着解析更多数据,数组大小正在扩展。

有什么办法可以做到这一点吗?我的意思是创建一个动态可扩展数组?或者如果有其他方法可以这样做,那么请帮助我解决这个问题。

I am parsing an XML file through Android Pull Parser technique. First, have a look at the below XML file:

<childs>
    <students>
        <name> hello </name>
        <address> xyz </address>
    </stdents>      

    <students>
        <name> abc </name>
        <address> def </address>
    </stdents>      

</childs>

Consider that I'm parsing the above file. Now, my problem is that I want to create a separate array for name and address. So while parsing, I want to store 1st student's data in name[0] and address[0] and the next student's data in name[1] and address[1]. In short, array size is extending as more data is parsed.

Is there any way to do so? I mean to create a dynamic extendable array? Or if there is another way to do so then please help me to fight with this problem.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

明月夜 2024-09-21 00:55:37

您可以使用 Vector,然后(如果您需要数组)使用 toArray 方法将数据复制到数组。

    Vector<String> v = new Vector<String>();
    for (int i=0; i<10; i++)
        v.add(new String(Integer.toString(i)));

    Object s[] = v.toArray();

    for(int i=0; i<10; i++)
        str = s[i].toString();

另一种选择:

    String a[] = {};
    v.toArray(a);

You could use Vector<String> and then (if you need an array) copy the data to array(s) using toArray method.

    Vector<String> v = new Vector<String>();
    for (int i=0; i<10; i++)
        v.add(new String(Integer.toString(i)));

    Object s[] = v.toArray();

    for(int i=0; i<10; i++)
        str = s[i].toString();

Another option:

    String a[] = {};
    v.toArray(a);
独闯女儿国 2024-09-21 00:55:37

您可以像这样使用 List 数组

List<String> name=new ArrayList<String>();
List<String> address=new ArrayList<String>(); 
name.add(StudyParser.getValue(eimg, "name"));  
address.add(StudyParser.getValue(eimg,"address")

,其中 StudyParser.getValue();是你调用来获取数据的方法

You use and List array like this

List<String> name=new ArrayList<String>();
List<String> address=new ArrayList<String>(); 
name.add(StudyParser.getValue(eimg, "name"));  
address.add(StudyParser.getValue(eimg,"address")

where StudyParser.getValue(); is method which u call to get data

乖乖公主 2024-09-21 00:55:37

创建无限大小数组的最简单方法是使用字符串生成器。
这允许您在运行时添加许多元素。
它有 3 个主要组成部分。

  1. 减速和初始化。
  2. 增值/追加
  3. 打印/使用

在 Android Studio 中的任何位置使用以下代码。

//Basic Decleration
        StringBuilder myString = new StringBuilder();
        
//Adding data
       myString.append("Hello text <br>");
        myString.append("some more data <br>");
        myString.append("more data to store <br>");
        
//Displaying in already created text view
        deviceDetails.setText(Html.fromHtml(callLogs+""));
       

注意:我将其视为 HTML 字符串,“
”标签将在文本视图中创建下一行。因此,所有添加的数据将显示在新行中。

The most simple method to create an unlimited size array is using String Builder.
This allow you to add many elements in runtime.
It has 3 major components.

  1. Decleration and Initialization.
  2. Value addition/ Append
  3. Print out/ Usage

Use the bellow code anywhere in Android Studio.

//Basic Decleration
        StringBuilder myString = new StringBuilder();
        
//Adding data
       myString.append("Hello text <br>");
        myString.append("some more data <br>");
        myString.append("more data to store <br>");
        
//Displaying in already created text view
        deviceDetails.setText(Html.fromHtml(callLogs+""));
       

Note: I'm treating this as HTML string and "
" tags will create the next line in text view. So, all added data will be displayed in a new line.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文