Skip to main content

Difference between Array Push and Array Insert

Difference between Array Push and Array Insert ?

As we all know there are more than one way of doing the same thing in the Ruby. Thus, it becomes more important to choose the right way so that it does not affect your Performance

Now, let us discuss about Arrays in Ruby.

=> Array is collection of entities

=> Array can be the collection of different type of objects like, integers, strings, hashes, symbols etc.

=> Methods: There are many inbuilt methods that come in handy for doing particular task

=> One can create Array and get list of the methods that can be called on Array object in Ruby by following command,

Creating Empty Array

array = Array.new   # where array is name of object

Listing Methods on Array

array.methods.sort # where array is object of Array class

=> Explore the various methods on Array class.

=> You can refer documentation of Ruby Array here.

Array Push and Array Insert

array = []   # Another way of creating an Array

=> We can insert an element is Array by,

array << 4   # Inserted element 4 in the Array, thus it will be,  [4]

=> We can also push element in the Array by,

 array.push(5)  
# Pushed (Ultimately inserted) element in the Array, thus it  will be, [4,5]



Both of the methods look exactly same and ultimately they achieve the same result of pushing/inserting an element in the array. But, the difference is

 => Array.push  can be used to insert more than one element in Array at a time. e.g.

array.push(1,2,3)

while,

=> Insertion operator (<<) can be used to insert only one element at a time in the Array.
Performance Consideration:

If we consider performance, then

Case: Want to add single element in the Array => Prefer using Insertion Operator(<<) than using Array.push method. Benchmarking proves the Fact.

Case: Want to add multiple elements in Array => You can prefer Array.push method.

That was all regarding Array Push and Insert, play with methods of Array object to get familiar with. We will get to know about Benchmarking in our upcoming post.

Comments and Suggestions are Welcome!

Comments

Popular posts from this blog

Get the Current url in ruby on rails

request.refererrequest.fullpathrequest.fullpath.split("?")[0]request.referer or request.env['HTTP_REFERER'] your controller to get the referer url. 

--------------------
request.original_url
request.url
request.host_with_port
<link rel="canonical" href="<%= request.url %>" />
<%=request.path%>
How can I get the current absolute URL in my Ruby on Rails view?
The request.request_uri only returns the relative URL.
request.env['REQUEST_URI']

 For Rails 3.2 or Rails 4 you should use request.original_url to get the current URL. More detail.

For Rails 3: You want "#{request.protocol}#{request.host_with_port}#{request.fullpath}", since request.url is now deprecated.

For Rails 2: You want request.url instead of request.request_uri. This combines the protocol (usually http://) with the host, and request_uri to give you the full address

Gem::LoadError (Specified 'mysql2' for database adapter, but the gem is not loaded. Add `gem 'mysql2'` to your Gemfile (and ensure its version is at the minimum required by ActiveRecord).?

Gem::LoadError (Specified 'mysql2' for database adapter, but the gem is not loaded. Add `gem 'mysql2'` to your Gemfile (and ensure its version is at the minimum required by ActiveRecord).) In rails?


1)change the gemfile in mysql version
 gem 'mysql2'

2)Change to mysql2 version
 gem 'mysql2','0.3.20'

Active Scaffold : Add radio buttons to your form ruby on rails ?

Active Scaffold : Add radio buttons to your form ruby on rails ?

The way to add radio buttons to your active scaffold create/update from is as shown below

#Controller

class UsersController < ApplicationController
active_scaffold :user do |config|
config.label = “Users”
config.columns = [:name, :gender]
config.columns[:gender].form_ui = :radio
config.columns[:gender].options[:options] = [['Male', '1'], ['Female','2']]
end
end