rJava (version 0.8-1)

aslist: Converts java objects or arrays to R lists

Description

as.list is implemented for java objects and java arrays to facilitate using lapply calls over elements of a java array or items of an Iterator associated with an Iterable object For java array references, as.list is mapped to .jevalArray For java objects that implement the Iterable interface, the list is created by iterating over the associated iterator

Usage

## S3 method for class 'jobjRef':
as.list(x, ...)
## S3 method for class 'jarrayRef':
as.list(x, ...)

Arguments

x
java array or Iterable java object
...
ignored

Value

  • An R list, or vector.

See Also

.jevalArray, lapply

Examples

Run this code
.jinit()
# lapplying over a java array
a <- .jarray( list( 
	.jnew( "java/awt/Point", 10L, 10L ), 
	.jnew( "java/awt/Point", 30L, 30L )
) )
lapply( a, function(point){ 
	with(point, { 
		(x + y ) ^ 2
	} )
} )

# lapply over a Vector (implements Iterable)
v <- .jnew("java/util/Vector")
v$add( "foo" )
v$add( .jnew("java/lang/Double", 10.2 ) )
sapply( v, function(item) item$getClass()$getName() )

Run the code above in your browser using DataCamp Workspace