java中如何给数组动态分配(java怎么定义动态数组)

本篇文章给大家谈谈java中如何给数组动态分配,以及java怎么定义动态数组对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

1、java能动态分配数组吗?2、java 中 String 数组怎么动态赋值3、Java的动态数组怎么做

java能动态分配数组吗?

可以,通过Arrays工具类实现。给你举个例:

int[] ary={1,1,1//…};

ary=Arrays.copyOf(ary,ary.length+1);

ary[ary.length-1]=?//……你需要添加的值

java 中 String 数组怎么动态赋值

首先明确一下数组的初始化:

//静态初始化

int a[]={1,2,3};

//动态初始化

int a[]; a = new int[3] ; a[0] = 1;a[1] = 2;a[2]=3;

//默认初始化

int a [] = new int [5] ;

JAVA是强类型,数组类型一旦声明,就不能更改了;

如果数组长度确定,我想所谓的“动态赋值”用循环应该可以搞定;

如果数组的长度是不确定的,我认为你这个提问才有点价值,因为这需要根据具体情况来改变数组的长度,告诉你java是怎么干的,用的 System.arraycopy,  jdk 里好多操作数组的源码都是用的这个,比如 ArrayList的实现

闲着没事写了个小例子玩玩:

import java.util.Random;

import java.util.Scanner;

/**

 *

 * @author LYTG

 * @since 2015-12-29 上午12:21:09

 */

public class DemoTest {

    /**

    * @author LYTG

    * @param args

    */

    public static void main(String[] args) {

        test2();

    }

    /**

    * @author LYTG

    * @param array

    */

    public static void out(String[] array){

        if(array==null){

            System.out.println(“null”);

            return;

        }

        if(array.length1){

            System.out.println(“{ }”);

            return;

        }

        StringBuffer sb = new StringBuffer();

        sb.append(“{\””);

        sb.append(array[0]);

        sb.append(“\””);

        for(int i = 1; iarray.length; i++){

            sb.append(“,\””);

            sb.append(array[i]);

            sb.append(“\””);

        }

        sb.append(“}”);

        System.out.println(sb.toString());

    }

    /**

    * 声明一个长度为5的String类型数组,并为每个数组元素赋值一个随机整数

    * @author LYTG

    */

    public static void test1(){

        String[] array = new String[5];

        for(int i = 0; iarray.length; i++){

            array[i] = String.valueOf(new Random().nextInt());

        }

        out(array);

    }

    /**

    * 在控制台输入字符,把每次输入的字符保存到一个数组中,

    * 如果输入的字符串中包含空格,则切割后再分别保存到此数组中,

    * 在每次输入完成后输出整个数组,直到手动终止程序

    * @author LYTG

    */

    private static String[] array = new String[0];

    public static void test2(){

        Scanner sc = new  Scanner(System.in);

        System.out.println(“请输入一串字符(输入完请敲回车):”);

        String input = sc.nextLine();

        if(input.contains(” “)){

            String[] a = input.split(” “);

            int arrayLength = array.length;

            int aLength = a.length;

            String[] newArray = new String[arrayLength + aLength];

            System.arraycopy(array, 0, newArray, 0, arrayLength);

            System.arraycopy(a, 0, newArray, arrayLength, aLength);

            array = newArray;

        }else{

            int arrayLength = array.length;

            String[] newArray = new String[arrayLength + 1];

            System.arraycopy(array, 0, newArray, 0, arrayLength);

            newArray[arrayLength] = input;

            array = newArray;

        }

        out(array);

        test2();

    }

}

Java的动态数组怎么做

Java动态数组是一种可以任意伸缩数组长度的对象,在Java中比较常用的是ArrayList,ArrayList是javaAPI中自带的java.util.ArrayList。下面介绍一下ArrayList作为Java动态数组的用法。

Java动态数组是一种可以任意伸缩数组长度的对象,在Java中比较常用的是ArrayList,ArrayList是javaAPI中自带的java.util.ArrayList。下面介绍一下ArrayList作为Java动态数组的用法。

1.语法:add()是添加一个新的元素,

remove()删除一个元素,

size()获得ArrayList的长度。

ArrayList的下标是从0开始。

2.示例代码

import java.util.ArrayList;

public class JavaArrayList {

public static void main(String[]args) {

//Java动态数组的初始化

ArrayList al=new ArrayList();

//向Java动态数组中添加数据

al.add(“a”);

al.add(“b”);

al.add(“c”);

//输出Java动态数组

for(int i=0;ial.size();i++) {

String alEach=(String)al.get(i);

System.out.println(alEach);

}

//删除数组中的某个元素,删除第二个元素

al.remove(1);

//修改Java动态数组,把新的元素放到第二个位置

al.add(1,”2″);

//输出Java动态数组

for(int i=0;ial.size();i++) {

String alEach=(String)al.get(i);

System.out.println(alEach);

}

}

}

输出如下:

a

b

c

a

2

c

PS:java的一维动态数组一般是使用集合的:ArrayList,HashMap等

泛型:

ArrayListT a = new ArrayListT();

T是你数组里 存的类型 比如String类型的 比如int的

你可以去看下泛型 就明白了

java中如何给数组动态分配(java怎么定义动态数组)

关于java中如何给数组动态分配和java怎么定义动态数组的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

本文来自投稿,不代表【】观点,发布者:【

本文地址: ,如若转载,请注明出处!

举报投诉邮箱:253000106@qq.com

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2024年4月3日 07:33:24
下一篇 2024年4月3日 07:40:35

相关推荐

  • c语言自定义函数数组求和,c语言自定义函数调用数组

    C语言数组怎样求和, 可以通过循环遍历数组中的每个元素,并进行累加。累加的结果可以保存在变量中,需要注意,要保证变量足够保存累加结果,不会出现溢出。 先获取数组长度,然后用for循环,从数组中获取值进行累加求和。 c语言中,定义数组后可以用sizeof命令获得数组的长度(即可容纳元素个数)。但是通过传递数组名参数到子函数中,以获得数组长度是不可行的,因为在子…

    2024年5月23日
    4500
  • java对数组计算,java数组计算时间复杂度

    Java中数组运算 1、很简单,因为你的数组是局部变量,只在那个声明它的方法里能用,解决办法是: 把它设置为属性; 作为方法的返回值。 2、将它们相加,并将结果存储到result数组中相应的位置。- 最后返回result数组即可。需要注意的是,上面的代码中我们使用了三元运算符 ? : 来判断数组的下标是否越界,如果越界则将值设为0。 3、public sta…

    2024年5月23日
    5200
  • c语言中null定义,c语言null等于0吗

    c语言NULL是什么意思? 1、Null,本意是空的,元素只有零的意思。NULL和0的值都是一样的,但是为了目的和用途及容易识别的原因,NULL用于指针和对象,0用于数值。 2、NULL 就是一个特殊的指针值, 其实本质是一个宏 define NULL (void *)0 也就是0值, 强制转成了指针。用来表示一个指针非法。 所以在初始化的时候经常用NULL…

    2024年5月23日
    4200
  • c语言输入数组,C语言输入数组的方法

    如何用c语言从键盘输入10个数存入数组并求和? 1、用C语言编写一段程序,用来输入10个整数保存到数组中,求出这10个整数的和并输出。 2、,数组是相同数据类型的元素的集合。 2,数组中的各元素的存储是有先后顺序的,它们在内存中按照这个先后顺序连续存放在一起。 3,数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。 3、void main(){ fl…

    2024年5月23日
    5100
  • java二维数组获得数据,java二维数组用法

    java中怎样用一位数组获得二维数组中某一行的值 利用 for循环遍历数组 即可 for循环是开界的。 Number : Name : A : B : Value;通过读取指定的列名,你可以得到,列名在数组中对应的索引值。 其实多维数组是在一维数组的基础上进行变换的,就拿二维数组来说,它是在一维数组上存储一维数组。 得到一维数组的长度lenth,如果长度为8…

    2024年5月23日
    4500
  • c语言输入参数数组的长度,c语言 数组参数

    C语言中关于数组长度 1、c语言中,定义数组后可以用sizeof命令获得数组的长度(可容纳元素个数)。 2、因为数组中每个元素的类型都是一样的,在内存中所占的字节数都是相同的,所以总的字节数除以一个元素所占的字节数就是数组的长度。 3、C语言数组的长度是预先定义好的,在整个程序中固定不变。操作方法如下:首先,点击进人visual studio,然后新建一个c…

    2024年5月23日
    4900
  • c语言二维数组的指针,c语言二维数组的指针是什么

    C语言中“二维数组行指针”是什么意思 在C语言中,可以通过定义一个行数组指针,使得这个指针与二维数组名具有同样的性质,实现它们之间可以直接赋值。 数组名就是一个指针常量,它代表数组元素在内存相关信息。C语言 是一门通用计算机编程语言,应用广泛。 a即是它的行指针,a+0表示第0行的地址,a+1表示第1行地址…a[row]+col即列指针,列指针经过一次解引用…

    2024年5月23日
    4800
  • java数组增加元素,java 数组 添加元素

    java数组如何循环添加元素 在List中添加元素主要有以下几种方法:点击学习大厂名师精品课add(Objectobj):在列表的末尾添加元素obj。add(intindex,Objectobj):在指定下标index处添加元素obj。 一般数组是不能添加元素的,因为他们在初始化时就已定好长度了,不能改变长度。 数组长度固定,插入以后原来的最后一个元素就被挤…

    2024年5月23日
    5300
  • c语言怎么输入数组,c语言怎么输入数组字符串

    如何用c语言从键盘输入10个数存入数组并求和? 1、用C语言编写一段程序,用来输入10个整数保存到数组中,求出这10个整数的和并输出。 2、,数组是相同数据类型的元素的集合。 2,数组中的各元素的存储是有先后顺序的,它们在内存中按照这个先后顺序连续存放在一起。 3,数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。 3、void main(){ fl…

    2024年5月23日
    4000
  • c语言数组联系,c语言数组的问题

    C语言字符数组连接问题 1、str1和str2都是99个字节,如果str1内字符串的长度比较大,连接str2就会出现超出str1长度的可能,也就是溢出。可以把str1的长度定义大一些。 2、C语言中,字符类型char和整数类型在存储数据的格式上是相同的,都是采用补码存储数据。所不同的是,char只有一个字节,而int数据有四个字节。 3、实际上就是实现str…

    2024年5月23日
    4100

发表回复

登录后才能评论



关注微信