精华内容
下载资源
问答
  • Java学习---- 数组引用传递

    千次阅读 2021-02-26 12:27:51
    1.public class ArrayRefDemo01{public static void main(String args[]){...// 利用静态初始化方式定义数组fun(temp) ;// 传递数组for(int i=0;iSystem.out.print(temp[i] + "、") ;}}public static void fun(int ...

    1.

    public class ArrayRefDemo01{

    public static void main(String args[]){

    int temp[] = {1,3,5} ;// 利用静态初始化方式定义数组

    fun(temp) ;// 传递数组

    for(int i=0;i

    System.out.print(temp[i] + "、") ;

    }

    }

    public static void fun(int x[]){// 接收整型数组的引用

    x[0] = 6 ;// 修改第一个元素

    }

    };

    运行结果:

    6、3、5、

    2.

    public class ArrayRefDemo02{

    public static void main(String args[]){

    int temp[] = fun() ;// 通过方法实例化数组

    print(temp) ;// 打印数组内容

    }

    public static void print(int x[]){

    for(int i=0;i

    System.out.print(x[i] + "、") ;

    }

    }

    public static int[] fun(){// 返回一个数组

    int ss[] = {1,3,5,7,9} ;// 定义一个数组

    return ss ;

    }

    };

    运行结果:

    1,3,5,7,9

    3.

    public class ArrayRefDemo03{

    public static void main(String args[]){

    int score[] = {67,89,87,69,90,100,75,90} ;// 定义整型数组

    int age[] = {31,30,18,17,8,9,1,39} ;// 定义整型数组

    sort(score) ;// 数组排序

    print(score) ;// 数组打印

    System.out.println("\n---------------------------") ;

    sort(age) ;// 数组排序

    print(age) ;// 数组打印

    }

    public static void sort(int temp[]){// 执行排序操作

    for(int i=1;i

    for(int j=0;j

    if(temp[i]

    int x = temp[i] ;

    temp[i] = temp[j] ;

    temp[j] = x ;

    }

    }

    }

    }

    public static void print(int temp[]){// 输出数组内容

    for(int i=0;i

    System.out.print(temp[i] + "\t") ;

    }

    }

    };

    运行结果:

    67 69 75 87 89 90 90 100

    ---------------------------

    1891718303139

    4.

    public class ArrayRefDemo04{

    public static void main(String args[]){

    int score[] = {67,89,87,69,90,100,75,90} ;// 定义整型数组

    int age[] = {31,30,18,17,8,9,1,39} ;// 定义整型数组

    java.util.Arrays.sort(score) ;// 数组排序

    print(score) ;// 数组打印

    System.out.println("\n---------------------------") ;

    java.util.Arrays.sort(age) ;// 数组排序

    print(age) ;// 数组打印

    }

    public static void print(int temp[]){// 输出数组内容

    for(int i=0;i

    System.out.print(temp[i] + "\t") ;

    }

    }

    };

    运行结果:

    67 69 75 87 89 90 90 100

    ---------------------------

    1891718303139

    5.

    public class ArrayRefDemo05{

    public static void main(String args[]){

    int i1[] = {1,2,3,4,5,6,7,8,9} ;// 源数组

    int i2[] = {11,22,33,44,55,66,77,88,99} ;// 目标数组

    copy(i1,3,i2,1,3) ;// 调用拷贝方法

    print(i2) ;

    }

    // 源数组名称,源数组开始点,目标数组名称,目标数组开始点,拷贝长度

    public static void copy(int s[],int s1,int o[],int s2,int len){

    for(int i=0;i

    o[s2+i] = s[s1+i] ;// 进行拷贝操作

    }

    }

    public static void print(int temp[]){// 输出数组内容

    for(int i=0;i

    System.out.print(temp[i] + "\t") ;

    }

    }

    };

    运行结果:

    114565566778899

    6.

    public class ArrayRefDemo06{

    public static void main(String args[]){

    int i1[] = {1,2,3,4,5,6,7,8,9} ;// 源数组

    int i2[] = {11,22,33,44,55,66,77,88,99} ;// 目标数组

    System.arraycopy(i1,3,i2,1,3) ;// 调用Java中对数组支持的拷贝方法

    print(i2) ;

    }

    public static void print(int temp[]){// 输出数组内容

    for(int i=0;i

    System.out.print(temp[i] + "\t") ;

    }

    }

    };

    运行结果:

    114565566778899

    展开全文
  • java中的数组引用就是让数组b直接指向数组a(即b = a;)。在java编程中这样做的目的是为了提高程序运行的效率。试想一下,假如数组中有上万个元素,在拷贝数组时,如果将数组a的所有元素都一一拷贝至数组b,时间开销很...

    java中的数组引用就是让数组b直接指向数组a(即b = a;)。在java编程中这样做的目的是为了提高程序运行的效率。

    c934dfe93bd28b71fb8ad974b8ff6b84.png

    试想一下,假如数组中有上万个元素,在拷贝数组时,如果将数组a的所有元素都一一拷贝至数组b,时间开销很大,有时候也不是必需的。

    所以,在Java语言中, b = a(a和b都是引用名)的含义就是将a起个别名"b"。

    之后,a和b其实就是指向的是同一个对象。int[] a = new int[10];

    int[] b;

    b = a;

    在Java中,这种给变量取别名的机制称之为引用(reference)。

    一个程序若想运行,必须驻入内存,而在内存中必然有其存储地址,通过这些内存地址,就可以找到我们想的数据。

    这些内存地址通常都很长,因为不容易记住,所以就给这些地址取个名称,这就是引用变量,这些引用变量存储在一块名叫 “栈内存” 的区域。

    那么所谓“引用”,就是Java对象在堆内存的地址赋给了多个“栈内存”的变量。

    由于Java禁止用户直接操作“堆整型、浮点型、布尔型等基本数据类内存”中对象的地址,所以只能用这些“栈内存”的多个引用名来间接操作它们对应的“堆内存”数据。

    所以,Java中的“引用”更类似于C/C++中的“指针”概念,所不同的是,C/C++中的“指针”可以被用户直接修改,而在Java中对内存的直接修改是被屏蔽的。

    展开全文
  • 当我们对 java 对象数组进行打印的时候,会遇到输出内容是 className + '@' + 16 进制的 hashcode 组成的字符串,那如何数组对象内部的真实内容呢?主要有以下 3 种方式。Arrays.toString(arr)从 java 1.5 之后,...

    当我们对 java 对象数组进行打印的时候,会遇到输出内容是 className + '@' + 16 进制的 hashcode 组成的字符串,那如何数组对象内部的真实内容呢?主要有以下 3 种方式。

    Arrays.toString(arr)

    从 java 1.5 之后,针对简单的数组(如一维数组),可以使用 Arrays.toString(arr),具体如下:

    String[] array = new String[] {"Knowledge", "Dict", "Good"};

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

    输出如下:

    [Knowledge, Dict, Good]

    需要强调的是,除了基本类型及 String 这种已经 toString 方法打印内容逻辑之外,其他封装的类对象要在 toString 方法里 override 内容输出。

    数组的打印,本质上是执行每个对象的 toString 方法。

    Arrays.deepToString(deepArray)

    也是从 java 5 之后,针对嵌入的数组(Nested Array),如二维数组,数组里面再嵌套其他数组的,可以用 Arrays.deepToString(deepArray) 静态方法。

    String[][] deepArray = new String[][] {{"John", "Mary"}, {"Alice", "Bob"}};

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

    //output: [[Ljava.lang.String;@106d69c, [Ljava.lang.String;@52e922]

    System.out.println(Arrays.deepToString(deepArray));

    输出:

    [[John, Mary], [Alice, Bob]]

    for 循环打印

    可以通过 for 循环,自定义打印输出的内容,这种基本没人用了,这里忽略。

    展开全文
  • 想了解java数组元素的引用实例讲解的相关内容吗,小妮浅浅在本文为您仔细讲解java数组元素的引用的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:java,数组元素,下面大家一起来学习吧。对于数组来说,...

    想了解java数组元素的引用实例讲解的相关内容吗,小妮浅浅在本文为您仔细讲解java数组元素的引用的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:java,数组元素,下面大家一起来学习吧。

    对于数组来说,我们想要对其中的一个元素进行引用,那就离不开new的使用。大家在学习new的时候,一般是以新建和初始化的身份出现的。如果是用在数组的引用上,那么会以运算符的方式出现。下面我们就来看看数组元素,在new运算符中引用的具体内容吧。

    定义并用运算符new为之分配空间后,才可以引用数组中的每个元素,数组元素的引用方式为:

    (1)arrayName[index]

    index为数组元素下标,可以使整形常亮或整形表达式。如:

    a[3], b[i], c[6*i];

    (2)数组元素的下标从0开始;长度为n的数组的合法下标取值范围为:

    0~n-1;

    拓展:每个数组都有一个属性lendth(注:这里length是一个属性,不是方法,没有加括号(),我们这里特别说明是为了和String的length()方法做区别)指明他的长度,例如:

    a.length的值为数组a的长度(元素个数)

    注:

    public static void main(String args[]){}

    我们每个类中的主函数也有一个数组,名叫srgs,那么这个数组时干嘛用的呢?这个数组就好比,我们在命令行中注入 ipconfig -all 中的all. 我们可以在输入java TestArray(类名) 23,12,aa,bbb 这个跟几个参数。然后可以在代码中输出来看到。

    实例扩展:

    (1) fill(int[] a, int value)

    该方法可将指定的 int 值分配给 int 型数组的每个元素。

    a:要进行元素替换的数组; value:要存储数组中所有元素的值。

    例1:在项目中创建类Swap ,在主方法中创建一维数组,并实现通过fill()方法填充数组元素,最后将数组中的各个元素输出。

    import java.util.Arrays;

    public class Swap {

    public static void main(String[] args) {

    int arr[] = new int[50];

    Arrays.fill(arr,99);

    for(int i = 0;i

    System.out.println("第" + i+ "个元素是:" + arr[i]);

    }

    }

    }

    (2) fill(int[] a, int frimIndex, int toIndex, int value)

    该方法将指定的int 值分配给int型数组指定范围内的每个元素。

    实例代码如下:

    import java.util.Arrays;

    public class Displace {

    public static void main(String[] args) {

    int arr[] = new int[] {99,88,77,66,55,44,33,22,11};

    Arrays.fill(arr,1,3,1000);

    Arrays.fill(arr,5,6,1000);

    for(int i = 0;i

    System.out.println("第"+i+"个元素是:"+ arr[i]);

    }

    }

    }

    fill()可以使用多次来实现对数组中不同元素替换,这点大家可以尝试一下。大家一定要亲手去敲代码,不要复制粘贴,这样对以后得学习和工作是很有帮助的!

    相关文章

    展开全文
  • Java 数组引用传递

    2021-03-05 23:21:22
    看了很多篇博客,整理自网络。int[] a = new int[10];int[] b;b = a;复制代码让数组b直接指向数组a(即b = a;),这样做的目的是为了提高...所以,在Java语言中,b =a(a和b都是引用名)的含义就是将a起个别名"b"。a和b...
  • 编写一个简单的Java应用程序,该程序在命令行窗口输出数组引用以及元素的值。 三、程序效果示例 程序运行效果如图2.2所示。 图2.2 输出数组引用和元素的值 四、程序模板 请按模板要求,将【代码】...
  • 对于数组来说,我们想要对其中的一个元素进行引用,那就离不开new的使用。大家在学习new的时候,一般是以新建和初始化的身份出现的。如果是用在数组引用上,那么会以运算符的方式出现。下面我们就来看看数组元素,...
  • import org.junit.Test;...char[]拼接字符串后再输出,则输出数组的地址值。引用数据类型输出类名+地址值其余基本数据类型输出地址值综上所述,char[]需要特别注意下*/char c[] = {'c','h','i','...
  • 一,数组的定义Java 中定义数组的语法有两种:1.type arrayName[];2.type[] arrayName;type 为Java中的任意数据类型,包括基本类型和组合类型,arrayName为数组名,必须是一个合法的标识符,[ ] 指明该变量是一个数组...
  • 本篇文章小编给大家分享一下java数组元素的引用实例代码解析,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。定义并用运算符new为之分配空间后,才可以引用数组...
  • 参考:http://www.cnblogs.com/plant/p/4637123.htmlhttps://zhidao.baidu.com/question/32741401.html内容:import java.io....import java.io.FileOutputStream;/*** @author czchina**/public class TestS...
  • 答:是引用类型。 这里通过一个简单的样例进行说明: ...可以看到,把数组a的第一个值改为10后,输出b的第一个值也是10,a和b两个变量引用了同一个数组。虽然保存的是基本类型值int,但是数组本身是引用类型的。 ...
  • Java数组的使用

    2021-02-27 15:48:26
    1.声明数组1.1声明一维数组声明一维数组有下列两种格式:数组的元素类型 数组名字[ ];数组的元素类型[ ] 数组名字1.2声明二维数组声明二维数组有下列...Java数组声明注意以下两点内容:1.数组的元素类型可以是Java中...
  • JAVA数组

    2021-02-26 14:58:21
    Java数组数组概述数组的定义数组是相同类型数据的有序集合每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们。数组声明和创建声明数组变量的语法dataType[] arrayRefaVar;//首选dataType ...
  • java数组

    2021-02-27 17:00:17
    1 数组1.1 创建一维数组一维数组实质上是一组相同类型数据的线性集合,当在程序中需要处理一组数据或者传递一组数据时,可以用这种类型的数组数组作为对象允许使用new关键字进行内存分配。在使用数组之前必须定义...
  • 1.从数组来看值传递和引用传递 2.重新学习数组 (1)基本类型数组 (2)引用类型数组 3.开头题目答案解析 1.从数组来看值传递和引用传递 先看一道代码题输出题 public class DemoCollection14 { public static void ...
  • Java数组索引问题

    2021-02-12 15:36:32
    /*数组操作的两个常见小问题:ArrayIndexOutOfBoundsException:数组索引越界异常原因:你访问了不存在的索引。NullPointerException:空指针异常原因:数组已经不在指向堆内存了。而你还用数组名去访问元素。作用:请...
  • Java数组的创建及引用

    2021-12-12 16:46:25
    文章目录数组的概念数组的创建和引用数组的声明数组的创建数组元素的初始化数组引用多维数组二维数组的声明二维数组的创建二维数组初始化二维数组引用 数组的概念 数组是由同类型的数据元素构成的一种数据结构...
  • } } 这输出: null null 为什么? 当我创建一个新的Class2实例时,该类的构造函数初始化object1和object2. 据我所知,对象包含对这些对象的引用.所以在他们初始化之后,我期待任何东西,但是无效. 有人能解释一下吗谢谢...
  • 在上一篇中,我们已经了解了数组,它是一种引用类型,本篇将详细介绍数组的内存分配等知识点。数组用来存储同一种数据类型的数据,一旦初始化完成,即所占的空间就已固定下来,即使某个元素被清空,但其所在空间仍然...
  • 伙计们,我认为几乎所有的语言,包括Java PASS数组都可以作为参考(可修改的)但不知何故,它在这里不起作用。测试数组仍然是1,2,3,大小为3奇怪的是,当我把结果[i]=2改为[1]=2时,它就起作用了。它确实通过了引用这...
  • 描述java数组的三种定义方式java中,数组是一种很常用的工具,今天我们来说说数组怎么定义[java] view plain copy /*** 数组的三种定义方法* 1.数组类型[] 数组名=new 数组类型[数组长度];* 2.数组类型[] ...
  • Java数组

    2021-03-08 05:41:07
    2、特点数组的特点:1、数组是一种引用数据类型2、数组当中的多个数据,类型必须统一3、数组的长度在程序运行期间不可改变3、初始化数组的初始化:在内存当中创建一个数组,并且向其中赋予一些默认值。两种常见的...
  • double 数组_java-数组

    千次阅读 2021-03-17 12:41:37
    Java 语言中提供的数组是用来存储固定大小的同类型元素。你可以声明一个数组变量,如 numbers[100] 来代替直接声明 100 个独立变量 number0,number1,....,number99。本教程将为大家介绍 Java 数组的声明、创建和...
  • Java数组的特性

    2021-02-12 21:14:46
    在C,C++等语言中,数组的定义简洁清晰,而在java中确有一些会让人迷惑的特性。本文就尝试分析这些特性。Java中的数组是对象吗?Java和C++都是面向对象的语言。在使用这些语言的时候,我们可以直接使用标准的类库,...
  • java (数组)

    2021-02-27 08:11:34
    下面我就要说说循环结构:说起循环,我就不由自主的想起for循环,但是这其中包含到了数组和集合,所以在此之前,我们先来讲讲数组和集合。首先是数组:数组概念:存储数据的容器;特点:1,只能存储一种的数据类型;2...
  • Java - 数组解析

    2021-02-12 13:45:32
    一、什么是数组数组?什么是数组?在我印象中的数组是应该这样的:通过new关键字创建并组装他们,通过使用整形索引值访问它的元素,并且它的尺寸是不可变的!...不管在其他语言中数组是什么,在java中它就是...
  • Java数组的定义与使用

    千次阅读 2021-09-26 14:46:21
    Java 中定义数组的语法有两种:    type arrayName[];    type[] arrayName;type 为Java中的任意数据类型,包括基本类型和组合类型,arrayName为数组名,必须是一个合法的标识符,[ ] 指明...
  • 数组既可以存储基本数据类型,也可以存储引用数据类型。数组的定义格式:A:数据类型[] 数组名;B:数据类型 数组名[];举例:A:int[] a; 定义一个int类型的数组a变量B:int a[]; 定义一个int类型的a数组变量注意:效果...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 196,908
精华内容 78,763
关键字:

java输出数组a的引用

java 订阅