[ADD] promotion and conversion in julia
This commit is contained in:
parent
400bdc6f01
commit
da1f27f158
|
@ -0,0 +1,61 @@
|
||||||
|
function foobar(a,b)
|
||||||
|
x::Int8 = a
|
||||||
|
y::Int8 = b
|
||||||
|
return x+y
|
||||||
|
end
|
||||||
|
|
||||||
|
println(foobar(1,2))
|
||||||
|
|
||||||
|
println(typeof(foobar(1,2)))
|
||||||
|
|
||||||
|
#println(foobar("1","2"))
|
||||||
|
|
||||||
|
println(Int8(4))
|
||||||
|
|
||||||
|
#println(Int8("4"))
|
||||||
|
|
||||||
|
println(isa(2,Int64))
|
||||||
|
|
||||||
|
println(isa(2,Float64))
|
||||||
|
|
||||||
|
println(isa(2,Integer))
|
||||||
|
|
||||||
|
println(isa(Int8,DataType))
|
||||||
|
|
||||||
|
println(isa(Int8,Type{Int8}))
|
||||||
|
|
||||||
|
println(isa(Int8,Type{Int16}))
|
||||||
|
|
||||||
|
println(convert(Int8,4))
|
||||||
|
|
||||||
|
println(typeof(convert(Int8,4)))
|
||||||
|
|
||||||
|
# convert(::Type{Int8}, x::Int64) =
|
||||||
|
|
||||||
|
Base.convert(::Type{Int8}, x::String) = parse(Int8,x)
|
||||||
|
|
||||||
|
println(foobar("1","2"))
|
||||||
|
|
||||||
|
println(Int8("4"))
|
||||||
|
|
||||||
|
println(1+2.0+Int8(3))
|
||||||
|
|
||||||
|
println(typeof(1+2.0+Int8(3)))
|
||||||
|
|
||||||
|
println(promote(1,2.0,Int8(3)))
|
||||||
|
|
||||||
|
a = promote(1,2.0,Int8(3))
|
||||||
|
|
||||||
|
println(+(a...)) # ... tuple unpacker
|
||||||
|
|
||||||
|
b = (3,2)
|
||||||
|
|
||||||
|
println(+(b...))
|
||||||
|
|
||||||
|
println(promote(Int8(2),Int16(4)))
|
||||||
|
|
||||||
|
c = promote(Int8(2),Int16(4))
|
||||||
|
|
||||||
|
println(typeof(c))
|
||||||
|
|
||||||
|
@edit 2+4
|
Loading…
Reference in New Issue