从数组中检索特定范围的数据(Java)

Jam*_*ing 1 java arrays midi instruments

我想ComboBox用默认的128 MIDI乐器填充a ,但是调用会Synthesizer.getDefaultSoundbank().getInstruments()返回每个可用乐器的列表(在我的机器上超过400).

然后我将所有可用乐器的列表复制到一个Object数组(命名_instruments)中,虽然它给了我所需要的一切,我只需要前128个元素.

            _soundbank = _synthesizer.getDefaultSoundbank();
            _synthesizer.loadAllInstruments(_soundbank);
            _synthesizer.close();   
            _instrument = _soundbank.getInstruments();
Run Code Online (Sandbox Code Playgroud)

有没有一种特定的方法来获得第一组仪器,或者是否可以在数组中的前128个元素之后简单地修剪任何东西?那样我只剩下第一套全套.

我希望这是有道理的,这是一个尴尬的场景.谢谢!

Alb*_*dez 5

最简单,更舒适的方式就是使用它Arrays.copyOf.见下文:

_instrument = Arrays.copyOf(_soundbank.getInstruments(), 128);
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请参阅Javadoc.