「java给数组」java给数组输入值
本篇文章给大家谈谈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给数组输入值的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。