# Create an array using the output of size()

**URL:** <https://discourse.julialang.org/t/create-an-array-using-the-output-of-size/66326>\
**Category:** General Usage\
**Tags:** question, matlab, array\
**Created:** [August 13, 2021, 7:02am UTC](https://discourse.julialang.org/t/create-an-array-using-the-output-of-size/66326 "2021-08-13T07:02:11Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Bardo](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bardo/32/21601_2.png) [@Bardo](https://discourse.julialang.org/u/Bardo)\
**Post date:** [August 13, 2021, 7:02am UTC](https://discourse.julialang.org/t/create-an-array-using-the-output-of-size/66326/1 "2021-08-13T07:02:11Z")

</div>

```julia
Matlab:

a =

   -1.3077 3.5784 3.0349
   -0.4336 2.7694 0.7254
    0.3426 -1.3499 -0.0631

>> zeros(size(a))

ans =

     0 0 0
     0 0 0
     0 0 0

julia> a
3×3 Matrix{Float64}:
 -0.348874 0.581243 1.20375
 -1.13732 0.943546 -0.634119
 -1.85663 -1.34655 0.521267

julia> Int32[size(a)]
ERROR: MethodError: Cannot `convert` an object of type Tuple{Int64, Int64} to an object of type Int32

julia> Int32(size(a))
ERROR: MethodError: no method matching Int32(::Tuple{Int64, Int64})

```

---

<div class="post-metadata">

**Author:** ![sijo](https://avatars.discourse-cdn.com/v4/letter/s/da6949/32.png) [@sijo](https://discourse.julialang.org/u/sijo)\
**Post date:** [August 13, 2021, 7:04am UTC](https://discourse.julialang.org/t/create-an-array-using-the-output-of-size/66326/2 "2021-08-13T07:04:24Z")

</div>

```julia
julia> a = rand(3, 3)
3×3 Matrix{Float64}:
 0.893835 0.365916 0.921844
 0.971955 0.0643828 0.63403
 0.149759 0.247479 0.0915574

julia> zeros(size(a))
3×3 Matrix{Float64}:
 0.0 0.0 0.0
 0.0 0.0 0.0
 0.0 0.0 0.0

julia> zeros(Int, size(a))
3×3 Matrix{Int64}:
 0 0 0
 0 0 0
 0 0 0

```

🙂

---

<div class="post-metadata">

**Author:** ![Vasily\_Pisarev](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/vasily_pisarev/32/7929_2.png) [@Vasily\_Pisarev](https://discourse.julialang.org/u/Vasily_Pisarev)\
**Post date:** [August 13, 2021, 7:20am UTC](https://discourse.julialang.org/t/create-an-array-using-the-output-of-size/66326/3 "2021-08-13T07:20:04Z")

</div>

In case you don’t care of the contents of the produced array

```julia
julia> a = rand(3, 3)
3×3 Matrix{Float64}:
 0.305883 0.416786 0.22493
 0.777658 0.645797 0.475424
 0.597531 0.145924 0.909268

julia> similar(a, Int)
3×3 Matrix{Int64}:
 140660108426576 140660108426976 140660101478000
 140660101477712 140660108427056 140660108443664
 140660108426896 140660108427136 140660108426816

```

---

<div class="post-metadata">

**Author:** ![rafael.guerra](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rafael.guerra/32/216610_2.png) [@rafael.guerra](https://discourse.julialang.org/u/rafael.guerra)\
**Post date:** [August 13, 2021, 10:13am UTC](https://discourse.julialang.org/t/create-an-array-using-the-output-of-size/66326/4 "2021-08-13T10:13:19Z")

</div>

Another syntax that is found frequently, but do not know the pros/cons:

```julia
Array{Int}(undef,size(a))

```

---

<div class="post-metadata">

**Author:** ![jling](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jling/32/212909_2.png) [@jling](https://discourse.julialang.org/u/jling)\
**Post date:** [August 13, 2021, 11:15am UTC](https://discourse.julialang.org/t/create-an-array-using-the-output-of-size/66326/5 "2021-08-13T11:15:33Z")

</div>

```julia
julia> zero(a)
3×3 Matrix{Float64}:
 0.0 0.0 0.0
 0.0 0.0 0.0
 0.0 0.0 0.0

```
