search
HomeJavajavaTutorialHow to define and use Java arrays

    1. Basic usage of arrays

    1. What is an array

    Array: A collection that stores a set of data of the same data type .

    2. Define the array

    int[]: int type array

    double[]: double type array

    Variables can be defined by type, such as :

    int[] array, array is a variable of this type. This variable is a variable that stores a set of the same data.

    Three ways to define arrays:

    How to define and use Java arrays

    The first one:

    int[] array = {1,2 ,3,4,5,6};Define an array and initialize it

    Although new is not written, it is actually an object

    Notes:

    int[10] array = {1,2,3,4,5,6};Wrong writing, int[] belongs to type, no numbers can be added inside the square brackets, which is equivalent to destruction here its type.

    Second type:

    int[] array2 = new int[3];

    How to define and use Java arrays

    Define array Uninitialized

    Third type:

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

    How to define and use Java arrays

    Definition and initialization

    The most commonly used of the three is the first one

    3. Use of arrays

    Get Array length:

    How to define and use Java arrays

    In Java, you can directly find the length of the current array through the array name array.length

    Access array elements:

    How to define and use Java arrays

    Access the element with index 4 in the array

    Access the array element out of bounds:

    How to define and use Java arrays

    The Java language directly reports an error when out of bounds

    Change array elements:

    How to define and use Java arrays

    By placing brackets in the array name, you can not only access the content of the subscript, but also write some data into the subscript

    The first type: (for loop)

    How to define and use Java arrays

    ## The second type: (enhanced for loop, for each loop)

    How to define and use Java arrays

    The difference between for loop and for each loop:

    For loop can get the subscript,

    for each loop cannot To the subscript, more are used in collections

    The third type: with the help of Java's array manipulation tool class Arrays

    How to define and use Java arrays

    2. Arrays as methods Parameters

    Basic usage

    JVM brief introduction

    How to define and use Java arrays

    How to define and use Java arrays

    Storage of local variables in memory :

    How to define and use Java arrays

    The reference does not point to an object. Writing method:

    How to define and use Java arrays

    This reference does not point to any object

    How to define and use Java arrays

    Can a reference point to multiple objects at the same time?

    How to define and use Java arrays

    For this code, it can only point to one object and store the address of an object. In the end, only the address of the last object is saved.

    The process of passing the array as a parameter of the method:

    How to define and use Java arrays

    Solution and printing results:

    before Two solutions:

    How to define and use Java arrays

    fun2 Print result:

    How to define and use Java arrays##Analysis example: What does the picture below represent

    How to define and use Java arrays

    represents the reference of array2, pointing to the object pointed to by the reference of array1.

    The following picture represents the meaning of the above example:

    How to define and use Java arrays

    Note:

    The quote points to the quote. This sentence is wrong. References can only point to objects

    Does the reference have to be on the stack?

    Not necessarily. Whether a variable is on the stack is determined by the nature of your variable. If it is a local variable, it must be on the stack. If not, for example, instance member variables are not necessarily on the stack.

    3. Array exercises

    1. Exchange the values ​​​​of two variables

    public class TestDemo {
        public static void swap(int[] array){
            int tmp = array[0];
            array[0] = array[1];
            array[1] = tmp;
     
        }
        public static void main(String[] args) {
            int[] array = {10,20};
            System.out.println("交换前: "+array[0]+" "+array[1]);
            swap(array);
            System.out.println("交换后: "+array[0]+" "+array[1]);
        }

    Print results:

    How to define and use Java arrays

    2. Write a method to * 2

     /**
         * 在原来的数组上扩大2倍
         * @param array
         */
        public static void enlarge(int[] array){
            for (int i = 0; i <array.length ; i++) {
                array[i] = array[i]*2;
            }
     
        }
     
        public static void main(String[] args) {
            int[] array = {1,2,3,4,5,6,7};
            enlarge(array);
            System.out.println(Arrays.toString(array));
        }

    Print the result of each element in the array:

    How to define and use Java arrays

    Enlarge the original array by twice the value In a new array

    /**
         * 把原来数组扩大2倍的值放在一个新的数组中
         * @param array
         * @return
         */
        public static int[] func(int[] array) {
            int[] ret = new int[array.length];
            for (int i = 0; i < array.length; i++) {
                ret[i] = array[i] * 2;
            }
            return ret;
        }
     
        public static void main(String[] args) {
            int[] array = {1,2,3,4,5,6,7};
           int[] ret =  func(array);
            System.out.println(Arrays.toString(ret));
        }

    3. Simulate the implementation of the tostring function

    public static String myToString(int[] array){
            String str = "[";
     
            for (int i = 0; i <array.length ; i++) {
                str = str+array[i];
                if(i != array.length-1){
                    str+= ",";
                }
            }
            str= str + "]";
            return str;
        }
     
        public static void main(String[] args) {
            int[] array = {1,2,3,4,5,6,7};
           String str =  myToString(array);
            System.out.println(str);
        }

    Print the result:

    How to define and use Java arrays

    4. Find the Maximum element

    public static int maxNum(int[] array){
            if(array == null) return -1;
            if (array.length == 0) return -1;
            int max = array[0];
            for (int i = 1; i <array.length ; i++) {
                if(max < array[i]){
                    max = array[i];
     
                }
            }
            return max;
        }
     
        public static void main(String[] args) {
            int[] array = {12,8,14,26,5,7,8};
            int max = maxNum(array);
            System.out.println(max);
        }

    Print result:

    How to define and use Java arrays

       public static int findNum(int[] array,int key){
            for (int i = 0; i <array.length ; i++) {
                if(array[i] == key){
                    return i;
                }
            }
            return -1;
        }
     
        public static void main(String[] args) {
            int[] array = {2,4,5,6,11,7,8,9};
            System.out.println(findNum(array, 7));
     
        }

    Print result:

    How to define and use Java arrays

    二分查找的必要条件是必须有序的数列
        public static int binarySearch(int[] array,int key){
            int left = 0;
            int right = array.length-1;
            while(left <= right){
                int mid = (left+right)/2;
                if(array[mid] > key){
                    right = mid - 1;
                }else if(array[mid] < key){
                    left = left + 1;
                }else{
                    return mid;
                }
     
            }
            return -1;
        }
     
        public static void main(String[] args) {
            int[] array = {12,14,15,16,18,23};
            System.out.println(binarySearch(array, 15));
        }

    Print result:

    How to define and use Java arrays

    The above is the detailed content of How to define and use Java arrays. For more information, please follow other related articles on the PHP Chinese website!

    Statement
    This article is reproduced at:亿速云. If there is any infringement, please contact admin@php.cn delete
    JVM performance vs other languagesJVM performance vs other languagesMay 14, 2025 am 12:16 AM

    JVM'sperformanceiscompetitivewithotherruntimes,offeringabalanceofspeed,safety,andproductivity.1)JVMusesJITcompilationfordynamicoptimizations.2)C offersnativeperformancebutlacksJVM'ssafetyfeatures.3)Pythonisslowerbuteasiertouse.4)JavaScript'sJITisles

    Java Platform Independence: Examples of useJava Platform Independence: Examples of useMay 14, 2025 am 12:14 AM

    JavaachievesplatformindependencethroughtheJavaVirtualMachine(JVM),allowingcodetorunonanyplatformwithaJVM.1)Codeiscompiledintobytecode,notmachine-specificcode.2)BytecodeisinterpretedbytheJVM,enablingcross-platformexecution.3)Developersshouldtestacross

    JVM Architecture: A Deep Dive into the Java Virtual MachineJVM Architecture: A Deep Dive into the Java Virtual MachineMay 14, 2025 am 12:12 AM

    TheJVMisanabstractcomputingmachinecrucialforrunningJavaprogramsduetoitsplatform-independentarchitecture.Itincludes:1)ClassLoaderforloadingclasses,2)RuntimeDataAreafordatastorage,3)ExecutionEnginewithInterpreter,JITCompiler,andGarbageCollectorforbytec

    JVM: Is JVM related to the OS?JVM: Is JVM related to the OS?May 14, 2025 am 12:11 AM

    JVMhasacloserelationshipwiththeOSasittranslatesJavabytecodeintomachine-specificinstructions,managesmemory,andhandlesgarbagecollection.ThisrelationshipallowsJavatorunonvariousOSenvironments,butitalsopresentschallengeslikedifferentJVMbehaviorsandOS-spe

    Java: Write Once, Run Anywhere (WORA) - A Deep Dive into Platform IndependenceJava: Write Once, Run Anywhere (WORA) - A Deep Dive into Platform IndependenceMay 14, 2025 am 12:05 AM

    Java implementation "write once, run everywhere" is compiled into bytecode and run on a Java virtual machine (JVM). 1) Write Java code and compile it into bytecode. 2) Bytecode runs on any platform with JVM installed. 3) Use Java native interface (JNI) to handle platform-specific functions. Despite challenges such as JVM consistency and the use of platform-specific libraries, WORA greatly improves development efficiency and deployment flexibility.

    Java Platform Independence: Compatibility with different OSJava Platform Independence: Compatibility with different OSMay 13, 2025 am 12:11 AM

    JavaachievesplatformindependencethroughtheJavaVirtualMachine(JVM),allowingcodetorunondifferentoperatingsystemswithoutmodification.TheJVMcompilesJavacodeintoplatform-independentbytecode,whichittheninterpretsandexecutesonthespecificOS,abstractingawayOS

    What features make java still powerfulWhat features make java still powerfulMay 13, 2025 am 12:05 AM

    Javaispowerfulduetoitsplatformindependence,object-orientednature,richstandardlibrary,performancecapabilities,andstrongsecurityfeatures.1)PlatformindependenceallowsapplicationstorunonanydevicesupportingJava.2)Object-orientedprogrammingpromotesmodulara

    Top Java Features: A Comprehensive Guide for DevelopersTop Java Features: A Comprehensive Guide for DevelopersMay 13, 2025 am 12:04 AM

    The top Java functions include: 1) object-oriented programming, supporting polymorphism, improving code flexibility and maintainability; 2) exception handling mechanism, improving code robustness through try-catch-finally blocks; 3) garbage collection, simplifying memory management; 4) generics, enhancing type safety; 5) ambda expressions and functional programming to make the code more concise and expressive; 6) rich standard libraries, providing optimized data structures and algorithms.

    See all articles

    Hot AI Tools

    Undresser.AI Undress

    Undresser.AI Undress

    AI-powered app for creating realistic nude photos

    AI Clothes Remover

    AI Clothes Remover

    Online AI tool for removing clothes from photos.

    Undress AI Tool

    Undress AI Tool

    Undress images for free

    Clothoff.io

    Clothoff.io

    AI clothes remover

    Video Face Swap

    Video Face Swap

    Swap faces in any video effortlessly with our completely free AI face swap tool!

    Hot Article

    Hot Tools

    mPDF

    mPDF

    mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

    SublimeText3 Chinese version

    SublimeText3 Chinese version

    Chinese version, very easy to use

    WebStorm Mac version

    WebStorm Mac version

    Useful JavaScript development tools

    Zend Studio 13.0.1

    Zend Studio 13.0.1

    Powerful PHP integrated development environment

    Dreamweaver Mac version

    Dreamweaver Mac version

    Visual web development tools