Ho spesso pensato che sarebbe una buona idea consentire l'uso di matrici come oggetti propri con i propri metodi invece di affidarsi a classi di helper come Array, Array e ArrayUtils.Java dovrebbe trattare gli array come oggetti?
Ad esempio:
ints.sort(); // Arrays.sort(ints);
int[] onemore = ints.add(8); // int[] onemore = ArrayUtils.add(ints, 8);
Sono sicuro che io non sono il primo con questa idea, ma ho avuto problemi alla ricerca di altri che hanno scritto su questo prima. Qualcuno può aiutarmi con alcuni riferimenti su questo argomento?
Questo pensiero è una buona o cattiva idea e perché?
Quanto sarebbe facile da implementare?
Alcuni altri esempi potrebbero includere (ma non ottenere appeso su di loro, sono estranei alla domanda stessa):
int[] ints = {5,4,3,2,1};
// Arrays.sort (ints);
ints.sort();
// int pos = Arrays.asList(ints).indexOf (5);
// int pos = ArraysUtils.indexOf (ints, 5);
int pos = ints.indexOf (5);
// Arrays.reverse (ints);
ints.reverse();
Array<Integer> array = ints; // cast to super class.
// int length = Array.getLength (array);
int length = array.getLength();
// Object n = Array.get (array, 3);
Object n = array.get (3);
// Array.set (array, 3, 7);
array.set (3, 7);
Object obj = array;
// if (obj instanceof int[])
// System.out.println(Array.toString((int[]) obj));
// else if (....)
System.out.println (obj);
Ottima domanda! :) –
Non sono sicuro che tu stia prendendo il mickey lì, Bill :-) È un ripubblicare la domanda di qualcuno come avrei scritto, spero di educarli.Questo è il motivo per cui l'ho ideato io: nessun rep-whoring per me. – paxdiablo
Stavo seguendo gli altri thread. Non potevo resistere alla tentazione di divertirmi un po '. Ora che ci penso davvero, è una domanda decente. –