「java给数组」java给数组输入值

博主:adminadmin 2023-01-25 02:30:10 414

本篇文章给大家谈谈java给数组,以及java给数组输入值对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

Java中怎么给数组批量赋值

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

这句话 我估计,大部分人都还没完全理解它的含义

首先,{1,2,3}这样的表达式,它一出现,就在内存中以一个整型数组出现了

类似"字符串" 一样,以双引号出现,系统默认的就把它当成一个java.lang.String的实例。

所以 当系统自动建立数组对象之后,才将引用传给 数组对象引用 a

后面你使用a={1,2,3,4,5} 直接这样是不行的。(注意和String a="aaa";的区别)

因为a的含义容易出现歧义,所以JAVA的机制不支持这种赋值,

但是另一种是可行的,a=new int[]{1,2,3,4,5,6};

不信你可以运行我下面的代码

public class Test {

/**

* @param args

*/

public static void main(String[] args)

{

// TODO Auto-generated method stub

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

for(int i=0;ia.length;i++) System.out.println(a[i]);

a=new int[]{1,2,3,4,5,6};

for(int i=0;ia.length;i++) System.out.println(a[i]);

}

}

java中如何添加数组元素

1、定义2个数组

String[] arr1 = {"1","2"};//定义一个字符串数组,把arr1的元素加入到arr2中

String[] arr2 = new String[2];//什么一个字符串数组

2、循环方式把arr1的数组元素加入到arr2

for(int i=0;i2;i++){

arr2[i] = arr1[i];//把arr1的元素添加到arr2中

//在数组中增加一个元素

public static void testC() {

String [] str = {"Java", "C++", "Php", "C#", "Python"};

for (String elementA:str ) {

System.out.print(elementA + " ");

}

//增加ruby

ListString list = new ArrayListString();

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

list.add(str[i]);

}

list.add(2, "ruby"); //list.add("ruby")

System.out.println();

String[] newStr =  list.toArray(new String[1]); //返回一个包含所有对象的指定类型的数组

for (String elementB:newStr ) {

System.out.print(elementB + " ");

System.out.println();

java怎样给数组赋值

Object[] array = new Object[ int size ];/Object array[] = new Object[ int size ];size 是数组大小

eg: String[] str = new String[ 10 ];

str[ 0 ] = "1"; str[ 1 ] = "1";

Object[] array = {obj1,obj2,==};/Object array[] = {obj1,obj2,==};

Object[] array = new Object[]{obj1,obj2,==};/Object array[] = new Object[]{obj1,obj2,==};

遍历:

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

System.out.println( array[ i ] );

}

或者

for(Object obj : array){

System.out.println( obj );

}

Java给数组中的数组赋值

package com.oceanlive.demo;

public class Test{

    public static void main(String[] args) {

        Object[] monitorsys = new Object[4];// 定义最大的数组容器

        Object[] situation = new Object[2];// 定义第一个元素

        Object[] sms = new Object[2];// 定义第二个元素

        Object[] rule = new Object[2];// 定义第三个元素

        Object[] alertsdb = new Object[2];// 定义第四个元素

        situation[0] = 1;

        monitorsys[0] = situation;// 赋值操作

        monitorsys[1] = sms;

        monitorsys[2] = rule;

        monitorsys[3] = alertsdb;

        // 打印的就是第一个元素的数组的地址值(需要强制转换成Object对象数组,才能从输出)

        System.out.println(((Object[]) monitorsys[0])[0]);

    }

}

JAVA 给数组赋值

int[] b;

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

b=a;

答:可以这样对数组进行赋值。

      但是这种方式对数组进行赋值,  实际上是一种浅层复制.

 也就是说,b实际上就是a,它们的内存地址值都是一样的, 当a发生改变,那么b也会跟着改变 。

为了真正意义上实现赋值,那么我们应该对数组进行深层复制。

深层复制后,无论a怎么改变,都不会影响到b。

具体代码如下

package core.com;

import java.util.Arrays;

public class DemoCopy {

 public static void main(String[] args) {

  //---------浅层复制--------

  int[] a;

  int[] b = {1,2,3,4};

  a=b;//浅层复制. 当b改变的时候,a会跟着改变

  System.out.println(Arrays.toString(a));//输出数组a,[1,2,3,4]

  b[0] = 5;//改变数组b , 数组a也会跟着改变

  System.out.println(Arrays.toString(a));//输出数组a,[5,2,3,4]

  System.out.println(a==b);//输出true  a就是b

  //-----------分割线--------

  //深层复制方法一:

  String[] c ;

  String[] d = {"a","b","c"};

  c = new String[d.length]; // 需要初始化数组长度

  for (int i = 0; i  d.length; i++) {//循环复制,

   c[i] = d[i];

  }

  d[0]="y";//改变数组d, 不会影响c

  System.out.println(Arrays.toString(c));//

  System.out.println(c==d);

  

  //-------------分割线---------

  //深层复制方法二:

  int[] ary1;

  int[] ary2 = {8,8,8};

  ary1 = new int[ary2.length];

  System.arraycopy(ary2, 0, ary1, 0, ary2.length);//调用函数进行深层复制

  ary2[0]=6;//改变数组ary2,并不会影响ary1

  System.out.println(Arrays.toString(ary1));

  System.out.println(ary1==ary2);

 }

}

控制台输出

[1, 2, 3, 4]

[5, 2, 3, 4]

true

[a, b, c]

false

[8, 8, 8]

false

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