質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

libGDX

libGDXとは、Javaでゲームを作るための開発ライブラリで、WindowsやMac OS X,、Linuxなどのデスクトップ、Android,やiOS、Blackberryといったモバイル、そしてHTML5 までのマルチプラットフォームをサポートしています。

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

Q&A

解決済

1回答

1930閲覧

libgdxのcreateメソッド 配列2

CCLVI256cg

総合スコア21

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

libGDX

libGDXとは、Javaでゲームを作るための開発ライブラリで、WindowsやMac OS X,、Linuxなどのデスクトップ、Android,やiOS、Blackberryといったモバイル、そしてHTML5 までのマルチプラットフォームをサポートしています。

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

0グッド

0クリップ

投稿2015/06/24 14:41

libgdxのcreatメソッドで配列を初期化したのですが、
music[0] = Gdx.audio.newMusic(Gdx.files.internal("sh1.mp3"));
このような配列の初期化(?)はできるのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

libgdxは使ったことないですが、Javaの話であれば、こうすればできると思います。

lang

1// com.badlogic.gdx.audio.Music 2Music[] musics = new Music[1]; // サイズ1の配列 3musics[0] = Gdx.audio.newMusic(Gdx.files.internal("sh1.mp3"));

投稿2015/06/26 02:52

argius

総合スコア9390

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

CCLVI256cg

2015/06/26 08:00

ありがとうございます。 ちょっとやってみます。
CCLVI256cg

2015/06/26 08:44 編集

あ、できました。すいません最初できなかったのでほかに方法があるのかと思って質問させていただきました。答えてくださりありがとうございました。m(__)m
CCLVI256cg

2015/06/26 09:12

んんん?まった、これだめだ・・・。初期化の仕方がだめなのかな・・・。
argius

2015/06/26 09:18

何かエラーが出ていますか?
CCLVI256cg

2015/06/27 02:31

えっと・・・ Exception in thread "LWJGL Application" java.lang.NullPointerException at Shooting.Shooting.create(Shooting.java:149) at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:143) at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:120) :desktop:run こんな感じです
argius

2015/06/27 03:53

Shooting.java:149 でNullPointerExceptionが発生していますね。ここで何をしているのかが分かれば原因を特定できるかもしれません。
CCLVI256cg

2015/06/27 04:00 編集

あ、エラーが起きていたところのソースは @Override public void create () { scene = 0; bat = new SpriteBatch(); vec = new Vector2 [3]; fon = new BitmapFont[2]; mus = new Music [1]; sou = new Sound [0]; vec[0].x = 336 - 32; vec[0].y = 480; //←ここ vec[1].x = 336 - 32; vec[1].y = 0; vec[2].y = -10; vec[2].y = -10; J.Create(); E.Create(); JB.Create(); EB.Create(); sou[0] = Gdx.audio.newSound(Gdx.files.internal("shoot.mp3")); mus[0] = Gdx.audio.newMusic(Gdx.files.internal("sh1.mp3")); mus[0].setLooping(true); mus[0].setVolume(0.1f); mus[1] = Gdx.audio.newMusic(Gdx.files.internal("sh2.mp3")); mus[0].setLooping(true); mus[1].setVolume(0.1f); } でした。
argius

2015/06/27 04:09

こちらもオブジェクト配列の問題のようですね。 new Vector2 [3];としただけでは、それぞれの要素の中身はnullなので、NullPointerExceptionになってしまいます。 確かめてはいませんが、new Vector2[] { new Vector2(), new Vector2(), new Vector2() };とすれば良さそうです。
CCLVI256cg

2015/06/27 07:18 編集

あ、できました!ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問