Skip to content
geeksforgeeks
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • Tutorials
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
  • Practice
    • Build your AI Agent
    • GfG 160
    • Problem of the Day
    • Practice Coding Problems
    • GfG SDE Sheet
  • Contests
    • Accenture Hackathon (Ending Soon!)
    • GfG Weekly [Rated Contest]
    • Job-A-Thon Hiring Challenge
    • All Contests and Events
  • Java Arrays
  • Java Strings
  • Java OOPs
  • Java Collection
  • Java 8 Tutorial
  • Java Multithreading
  • Java Exception Handling
  • Java Programs
  • Java Project
  • Java Collections Interview
  • Java Interview Questions
  • Java MCQs
  • Spring
  • Spring MVC
  • Spring Boot
  • Hibernate
Open In App
Next Article:
How to Add an Element at Particular Index in Java ArrayList?
Next article icon

Remove an Element at Specific Index from an Array in Java

Last Updated : 25 Nov, 2024
Comments
Improve
Suggest changes
Like Article
Like
Report

In Java, removing an element at a specific index from an array means shifting subsequent elements to the left. Arrays have a fixed size, so creating a new array without the target element is often necessary.

Examples: 

The basic approach to remove an element at a specific index is using a loop.

Java
// Java program to remove an element // from a specific index from an array  // using loop import java.util.Arrays;  class Main {     public static int[] remove(int[] arr, int in) {          if (arr == null || in < 0 || in >= arr.length) {             return arr;         }        	int[] arr2 = new int[arr.length - 1];          // Copy the elements except the index         // from original array to the other array         for (int i = 0, k = 0; i < arr.length; i++) { 			if (i == in)                 continue; 			           	arr2[k++] = arr[i];         }          return arr2;     }        public static void main(String[] args)     {         int[] arr = { 1, 2, 3, 4, 5 };        	int in = 2;          // Remove the element         arr = remove(arr, in);          System.out.println(Arrays.toString(arr));     } } 

Output
[1, 2, 4, 5] 

Explanation: This example includes finding the element at the specified index and then removing that element. The rest of the elements are copied into a new array. This would lead to an array of size one less than the original array.  

Other Approaches to Remove Element at Specific Index

Using Java 8 Streams

We can use Java 8 streams to remove element at specific index from an array, when modifying small or mid-sized arrays.

Approach: 

  • Get the array and the index.
  • Convert the array into IntStream using IntStream.range() method.
  • Remove the specified index element using the filter() method.
  • Map and form a new array of the filtered elements using map() and toArray() methods.
  • Return the formed array.

Illustration:

Java
// Java program to remove an element // from a specific index from an array import java.util.Arrays; import java.util.stream.IntStream;  class GFG {     public static int[] remove(int[] arr, int in){ 		if (arr == null || in < 0 || in >= arr.length)             return arr;          return IntStream.range(0, arr.length)             .filter(i -> i != in)             .map(i -> arr[i])             .toArray();     }      public static void main(String[] args)     {         int[] arr = { 1, 2, 3, 4, 5 };         int in = 2;          // Remove the element         arr = remove(arr, in);          System.out.println(Arrays.toString(arr));     } } 

Output
[1, 2, 4, 5] 


Using ArrayList

We can use ArrayList, if we need flexibility with list operations. It is easier to add or remove elements dynamically before converting back to an array.

Approach: 

  • Get the array and the index.
  • Form an ArrayList with the array elements.
  • Remove the specified index element using remove() method.
  • Form a new array of the ArrayList using mapToInt() and toArray() methods.
  • Return the formed array.

Illustration:

Java
// Java program to remove an element // from a specific index from an array import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; import java.util.stream.IntStream;  class Main {   	   	// Function to Remove the element from the array   	public static int[] remove(int[] arr, int i){                	if (arr == null || i < 0 || i >= arr.length)             return arr;              	List<Integer> al = IntStream.of(arr).boxed()                                     .collect(Collectors.toList());        	// Removing element from the index         al.remove(i);          return al.stream()             .mapToInt(Integer::intValue)             .toArray();     }      public static void main(String[] args){         int[] arr = { 1, 2, 3, 4, 5 };         int i = 2;        	// Removing index i from arr       	arr = remove(arr, i);          System.out.println(Arrays.toString(arr));     } } 

Output
[1, 2, 4, 5] 


Using System.arraycopy() method

We can use System.arraycopy() method, when we are dealing with performance-critical applications. It avoids extra object creation and provides efficient array copying specially for large arrays.

Approach:

  • Get the array and the index.
  • Create a new array of size one less than the size of the original array.
  • Copy the elements from starting till index from the original array to the other array using System.arraycopy().
  • Copy the elements from index + 1 till the end from the original array to the other array using System.arraycopy().
  • Return the formed array.

Illustration:

Java
// Java program to remove an element // from a specific index from an array  import java.util.Arrays;  class GFG {      // Function to remove the element     public static int[] remove(int[] arr, int i){                if (arr == null || i < 0 || i >= arr.length)             return arr;          int[] arr1 = new int[arr.length - 1];          System.arraycopy(arr, 0, arr1, 0, i);          // Copy the elements from index + 1 till end         // from original array to the other array         System.arraycopy(arr, i + 1,                         arr1, i,                         arr.length - i - 1);          return arr1;     }      public static void main(String[] args){                int[] arr = { 1, 2, 3, 4, 5 }; 		int i = 2;          arr = remove(arr, i);          System.out.println(Arrays.toString(arr));     } } 

Output
[1, 2, 4, 5] 


Next Article
How to Add an Element at Particular Index in Java ArrayList?

R

RishabhPrabhu
Improve
Article Tags :
  • Java
  • Java Programs
  • Java-Array-Programs
  • Java-Arrays
Practice Tags :
  • Java

Similar Reads

  • Removing Element from the Specified Index in Java ArrayList
    The remove(int index) method present in java.util.ArrayList class removes the element at the specified position in this list and shifts any subsequent elements to the left (i.e. subtracts one from their indices). Syntax : public removed_element remove(int index) Parameters: The index of the element
    3 min read
  • How to Insert an element at a specific position in an Array in Java
    An array is a collection of items stored at contiguous memory locations. In this article, we will see how to insert an element in an array in Java.Given an array arr of size n, this article tells how to insert an element x in this array arr at a specific position pos. Approach 1: Here's how to do it
    4 min read
  • How to Replace an Element at a Specific Index of the Vector in Java?
    The Vector class implements a growable array of objects. Vectors basically fall in legacy classes but now it is fully compatible with collections. It is found in the java.util package and implements the List interface, so we can use all the methods of List interface here. Examples Input : Vector= ["
    2 min read
  • How to Add an Element at Particular Index in Java ArrayList?
    ArrayList.add() method is used to add an element at particular index in Java ArrayList. Syntax: public void add(int index, Object element) ; Parameters: index -position at which the element has to be inserted. The index is zero-based.element - the element to be inserted at the specified position. Ex
    2 min read
  • Remove first element from ArrayList in Java
    Given an ArrayList collection in Java, the task is to remove the first element from the ArrayList. Example: Input: ArrayList[] = [10, 20, 30, 40, 50] Output: [20, 30, 40, 50]Input: ArrayList[] = [1, 1, 2, 2, 3]Output: [1, 2, 2, 3] We can use the remove() method of ArrayList container in Java to remo
    2 min read
  • Remove all Occurrences of an Element from Array in Java
    In Java, removing all occurences of a given element from an array can be done using different approaches that are, Naive approach using array copyJava 8 StreamsUsing ArrayList.removeAll()Using List.removeIf()Problem Stament: Given an array and a key, the task is to remove all occurrences of the spec
    5 min read
  • Java Program to Remove a Specific Element From a Collection
    remove() method is used to remove elements from a collection. It removes the element at the specified position in this list. Shifts any subsequent elements to the left by subtracts one from their indices. In simpler words, the remove() method is used for removing the element from a specific index fr
    3 min read
  • Removing last element from ArrayList in Java
    Given an ArrayList collection in Java, the task is to remove the last element from the ArrayList. Example: Input: ArrayList[] = [10, 20, 30, 1, 2] Output: [10, 20, 30, 1] After removing the last element 2, the ArrayList is: [10, 20, 30, 1] Input: ArrayList[] = [1, 1, 2, 2, 3] Output: [1, 1, 2, 2] Af
    2 min read
  • How to Replace a Element in Java ArrayList?
    To replace an element in Java ArrayList, set() method of java.util. An ArrayList class can be used. The set() method takes two parameters the indexes of the element that has to be replaced and the new element. The index of an ArrayList is zero-based. So, to replace the first element, 0 should be the
    2 min read
  • How to Swap Two Elements in an ArrayList in Java?
    We can swap two elements of Array List using Collections.swap() method. This method accepts three arguments. The first argument is the ArrayList and the other two arguments are the indices of the elements. This method returns nothing. Syntax: public static void swap(List list, int a, int b); Paramet
    2 min read
geeksforgeeks-footer-logo
Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
GFG App on Play Store GFG App on App Store
Advertise with us
  • Company
  • About Us
  • Legal
  • Privacy Policy
  • In Media
  • Contact Us
  • Advertise with us
  • GFG Corporate Solution
  • Placement Training Program
  • Languages
  • Python
  • Java
  • C++
  • PHP
  • GoLang
  • SQL
  • R Language
  • Android Tutorial
  • Tutorials Archive
  • DSA
  • Data Structures
  • Algorithms
  • DSA for Beginners
  • Basic DSA Problems
  • DSA Roadmap
  • Top 100 DSA Interview Problems
  • DSA Roadmap by Sandeep Jain
  • All Cheat Sheets
  • Data Science & ML
  • Data Science With Python
  • Data Science For Beginner
  • Machine Learning
  • ML Maths
  • Data Visualisation
  • Pandas
  • NumPy
  • NLP
  • Deep Learning
  • Web Technologies
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • ReactJS
  • NextJS
  • Bootstrap
  • Web Design
  • Python Tutorial
  • Python Programming Examples
  • Python Projects
  • Python Tkinter
  • Python Web Scraping
  • OpenCV Tutorial
  • Python Interview Question
  • Django
  • Computer Science
  • Operating Systems
  • Computer Network
  • Database Management System
  • Software Engineering
  • Digital Logic Design
  • Engineering Maths
  • Software Development
  • Software Testing
  • DevOps
  • Git
  • Linux
  • AWS
  • Docker
  • Kubernetes
  • Azure
  • GCP
  • DevOps Roadmap
  • System Design
  • High Level Design
  • Low Level Design
  • UML Diagrams
  • Interview Guide
  • Design Patterns
  • OOAD
  • System Design Bootcamp
  • Interview Questions
  • Inteview Preparation
  • Competitive Programming
  • Top DS or Algo for CP
  • Company-Wise Recruitment Process
  • Company-Wise Preparation
  • Aptitude Preparation
  • Puzzles
  • School Subjects
  • Mathematics
  • Physics
  • Chemistry
  • Biology
  • Social Science
  • English Grammar
  • Commerce
  • World GK
  • GeeksforGeeks Videos
  • DSA
  • Python
  • Java
  • C++
  • Web Development
  • Data Science
  • CS Subjects
@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Lightbox
Improvement
Suggest Changes
Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
geeksforgeeks-suggest-icon
Create Improvement
Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
geeksforgeeks-improvement-icon
Suggest Changes
min 4 words, max Words Limit:1000

Thank You!

Your suggestions are valuable to us.

What kind of Experience do you want to share?

Interview Experiences
Admission Experiences
Career Journeys
Work Experiences
Campus Experiences
Competitive Exam Experiences