[DEV] add tools elements

This commit is contained in:
Edouard DUPIN 2021-07-07 00:25:01 +02:00
parent e1ca9ad344
commit cb4116f111

View File

@ -1,5 +1,6 @@
package org.atriasoft.etk.util; package org.atriasoft.etk.util;
import java.util.Arrays;
import java.util.List; import java.util.List;
public class ArraysTools { public class ArraysTools {
@ -7,9 +8,7 @@ public class ArraysTools {
if (buffer == null) { if (buffer == null) {
return; return;
} }
for (int iii = 0; iii < buffer.length; iii++) { Arrays.fill(buffer, value);
buffer[iii] = value;
}
} }
public static <T> void fill2(final float[][] buffer, final float value) { public static <T> void fill2(final float[][] buffer, final float value) {
@ -35,7 +34,7 @@ public class ArraysTools {
} }
public static byte[] listByteToPrimitive(List<Object> input) { public static byte[] listByteToPrimitive(final List<Object> input) {
byte[] out = new byte[input.size()]; byte[] out = new byte[input.size()];
for(int iii=0; iii<input.size(); iii++) { for(int iii=0; iii<input.size(); iii++) {
out[iii] = (Byte)input.get(iii); out[iii] = (Byte)input.get(iii);
@ -43,14 +42,14 @@ public class ArraysTools {
return out; return out;
} }
public static byte[] toPrimitive(Byte[] input) { public static byte[] toPrimitive(final Byte[] input) {
byte[] out = new byte[input.length]; byte[] out = new byte[input.length];
for(int iii=0; iii<input.length; iii++) { for(int iii=0; iii<input.length; iii++) {
out[iii] = input[iii]; out[iii] = input[iii];
} }
return out; return out;
} }
public static short[] listShortToPrimitive(List<Object> input) { public static short[] listShortToPrimitive(final List<Object> input) {
short[] out = new short[input.size()]; short[] out = new short[input.size()];
for(int iii=0; iii<input.size(); iii++) { for(int iii=0; iii<input.size(); iii++) {
out[iii] = (Short)input.get(iii); out[iii] = (Short)input.get(iii);
@ -58,14 +57,14 @@ public class ArraysTools {
return out; return out;
} }
public short[] toPrimitive(Short[] input) { public short[] toPrimitive(final Short[] input) {
short[] out = new short[input.length]; short[] out = new short[input.length];
for(int iii=0; iii<input.length; iii++) { for(int iii=0; iii<input.length; iii++) {
out[iii] = input[iii]; out[iii] = input[iii];
} }
return out; return out;
} }
public static int[] listIntegerToPrimitive(List<Object> tmpp) { public static int[] listIntegerToPrimitive(final List<Object> tmpp) {
int[] out = new int[tmpp.size()]; int[] out = new int[tmpp.size()];
for(int iii=0; iii<tmpp.size(); iii++) { for(int iii=0; iii<tmpp.size(); iii++) {
out[iii] = (Integer)tmpp.get(iii); out[iii] = (Integer)tmpp.get(iii);
@ -73,14 +72,14 @@ public class ArraysTools {
return out; return out;
} }
public static int[] toPrimitive(Integer[] input) { public static int[] toPrimitive(final Integer[] input) {
int[] out = new int[input.length]; int[] out = new int[input.length];
for(int iii=0; iii<input.length; iii++) { for(int iii=0; iii<input.length; iii++) {
out[iii] = input[iii]; out[iii] = input[iii];
} }
return out; return out;
} }
public static long[] listLongToPrimitive(List<Object> input) { public static long[] listLongToPrimitive(final List<Object> input) {
long[] out = new long[input.size()]; long[] out = new long[input.size()];
for(int iii=0; iii<input.size(); iii++) { for(int iii=0; iii<input.size(); iii++) {
out[iii] = (Long)input.get(iii); out[iii] = (Long)input.get(iii);
@ -88,28 +87,28 @@ public class ArraysTools {
return out; return out;
} }
public static long[] toPrimitive(Long[] input) { public static long[] toPrimitive(final Long[] input) {
long[] out = new long[input.length]; long[] out = new long[input.length];
for(int iii=0; iii<input.length; iii++) { for(int iii=0; iii<input.length; iii++) {
out[iii] = input[iii]; out[iii] = input[iii];
} }
return out; return out;
} }
public static boolean[] listBooleanToPrimitive(List<Object> input) { public static boolean[] listBooleanToPrimitive(final List<Object> input) {
boolean[] out = new boolean[input.size()]; boolean[] out = new boolean[input.size()];
for(int iii=0; iii<input.size(); iii++) { for(int iii=0; iii<input.size(); iii++) {
out[iii] = (Boolean)input.get(iii); out[iii] = (Boolean)input.get(iii);
} }
return out; return out;
} }
public static double[] listDoubleToPrimitive(List<Object> input) { public static double[] listDoubleToPrimitive(final List<Object> input) {
double[] out = new double[input.size()]; double[] out = new double[input.size()];
for(int iii=0; iii<input.size(); iii++) { for(int iii=0; iii<input.size(); iii++) {
out[iii] = (Double)input.get(iii); out[iii] = (Double)input.get(iii);
} }
return out; return out;
} }
public static float[] listFloatToPrimitive(List<Object> input) { public static float[] listFloatToPrimitive(final List<Object> input) {
float[] out = new float[input.size()]; float[] out = new float[input.size()];
for(int iii=0; iii<input.size(); iii++) { for(int iii=0; iii<input.size(); iii++) {
out[iii] = (Float)input.get(iii); out[iii] = (Float)input.get(iii);
@ -117,13 +116,38 @@ public class ArraysTools {
return out; return out;
} }
public static boolean[] toPrimitive(boolean[] input) { public static boolean[] toPrimitive(final boolean[] input) {
boolean[] out = new boolean[input.length]; boolean[] out = new boolean[input.length];
for(int iii=0; iii<input.length; iii++) { for(int iii=0; iii<input.length; iii++) {
out[iii] = (boolean)input[iii]; out[iii] = input[iii];
} }
return out; return out;
} }
private ArraysTools() {} private ArraysTools() {}
public static Object listToPrimitiveAuto(final Class<?>type, final List<Object> value) {
if (type == byte.class) {
return ArraysTools.listByteToPrimitive(value);
}
if (type == short.class) {
return ArraysTools.listShortToPrimitive(value);
}
if (type == int.class) {
return ArraysTools.listIntegerToPrimitive(value);
}
if (type == long.class) {
return ArraysTools.listLongToPrimitive(value);
}
if (type == boolean.class) {
return ArraysTools.listBooleanToPrimitive(value);
}
if (type == float.class) {
return ArraysTools.listFloatToPrimitive(value);
}
if (type == double.class) {
return ArraysTools.listDoubleToPrimitive(value);
}
return null;
}
} }