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

发布于 2024-11-02 02:45:59 字数 641 浏览 1 评论 0原文

我想用默认的 128 种 MIDI 乐器填充 ComboBox,但调用 Synthesizer.getDefaultSoundbank().getInstruments() 返回一个 every 列表可用的仪器(我的机器上有超过 400 个)。

然后,我将所有可用乐器的列表复制到 Object 数组(名为 _instruments)中,尽管它为我提供了我可能需要的一切,但我只需要前 128 个元素。

            _soundbank = _synthesizer.getDefaultSoundbank();
            _synthesizer.loadAllInstruments(_soundbank);
            _synthesizer.close();   
            _instrument = _soundbank.getInstruments();

是否有特定的方法来获取第一组仪器,或者是否可以简单地修剪数组中前 128 个元素之后的任何内容?这样我就只剩下第一套全套了。

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

I want to populate a ComboBox with the default 128 MIDI instruments, but calling Synthesizer.getDefaultSoundbank().getInstruments() returns a list of every instrument available (more than 400 on my machine).

I then copy the list of all the available instruments into an Object array (named _instruments), although it gives me everything I could ever need, I only need the first 128 elements.

            _soundbank = _synthesizer.getDefaultSoundbank();
            _synthesizer.loadAllInstruments(_soundbank);
            _synthesizer.close();   
            _instrument = _soundbank.getInstruments();

Is there a specific way to get the first set of instruments or would it be possible to simply trim anything after the first 128 elements in an array? That way I would only be left with the first full set.

I hope that makes sense, it's an awkward scenario. Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

只涨不跌 2024-11-09 02:45:59

最短、更舒适的方法是使用 Arrays.copyOf。请参阅下文:

_instrument = Arrays.copyOf(_soundbank.getInstruments(), 128);

请参阅 Javadoc 了解更多信息。

The shortest and more comfortable way to do it would be using Arrays.copyOf. See below:

_instrument = Arrays.copyOf(_soundbank.getInstruments(), 128);

See the Javadoc for more info.

听,心雨的声音 2024-11-09 02:45:59

Java 自己的 Arrays.copyOfRange(..) 提取前 128 个?

What about Java's own Arrays.copyOfRange(..) to extract the first 128?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文