code: public static String primArrayToString(Object input) {
  		return new StructBehavior<String>(input) {
  
  			@Override protected String booleanIf() { return Arrays.toString((boolean[]) this.delegate); }
  			@Override protected String byteIf() { return Arrays.toString((byte[]) this.delegate); }
  			@Override protected String characterIf() { return Arrays.toString((char[]) this.delegate); }
  			@Override protected String doubleIf() { return Arrays.toString((double[]) this.delegate); }
  			@Override protected String floatIf() { return Arrays.toString((float[]) this.delegate); }
  			@Override protected String integerIf() { return Arrays.toString((int[]) this.delegate); }
  			@Override protected String longIf() { return Arrays.toString((long[]) this.delegate); }
  			@Override protected String shortIf() { return Arrays.toString((short[]) this.delegate); }
  			@Override protected String nullIf() { return null; }
  			@Override protected String noneMatched() { return null; }
  			
  		}.doDetect();
  	}
docs: Returns the primitive array {@link Object#toString()} result
  
  @param input
  @return