質問編集履歴

3

コンパイル後のエラー

2017/01/20 15:08

投稿

datuota00
datuota00

スコア20

test CHANGED
File without changes
test CHANGED
@@ -325,3 +325,133 @@
325
325
  何をいっているかはわかるのですがどうしたらいいのか。。
326
326
 
327
327
  何か案はございますでしょうか。
328
+
329
+ ###追記2
330
+
331
+ たびたびすいません。
332
+
333
+ 修正を重ねた結果コンパイルすることはできたのですが、音楽を鳴らす文字aを入力するとエラーが出てしまいます。
334
+
335
+ 私が考えるにa(h)の所がまちがっているのでは??と思うのですがわかる方、いらっしゃいますでしょうか。。
336
+
337
+ ```
338
+
339
+ import java.util.Scanner;
340
+
341
+ import java.awt.event.*;
342
+
343
+ import java.awt.geom.Ellipse2D;
344
+
345
+ import java.awt.*;
346
+
347
+ import javax.swing.*;
348
+
349
+ import java.util.*;
350
+
351
+ import java.util.Scanner;
352
+
353
+ import java.applet.*;
354
+
355
+
356
+
357
+ import java.awt.event.KeyListener;
358
+
359
+ import java.awt.event.KeyEvent;
360
+
361
+ import java.awt.event.InputEvent;
362
+
363
+
364
+
365
+ public class KRY {
366
+
367
+ public AudioClip audioBass = Applet.newAudioClip(getClass().getResource("音楽ファイル"));
368
+
369
+ static KRY h;
370
+
371
+ public static void main(String[] argst) {
372
+
373
+ String s[] = new String[5];
374
+
375
+
376
+
377
+ Scanner sc = new Scanner(System.in);
378
+
379
+ for (int i = 0; i < s.length; i++) {
380
+
381
+ System.out.println("please tipe");
382
+
383
+ s[i] = sc.next();
384
+
385
+ }
386
+
387
+
388
+
389
+ for (int i = 0; i < s.length; i++) {
390
+
391
+ System.out.printf("s[%d]=%s\n", i, s[i]);
392
+
393
+
394
+
395
+ switch (s[i]) {
396
+
397
+ case "a":
398
+
399
+ a();
400
+
401
+ break;
402
+
403
+ default:
404
+
405
+ break;
406
+
407
+ }
408
+
409
+ }
410
+
411
+ }
412
+
413
+ public static void a(KRY h) {
414
+
415
+ h.audioBass.play();
416
+
417
+ }
418
+
419
+ }
420
+
421
+ ```
422
+
423
+ 次が実行文とエラー文です。
424
+
425
+ ```
426
+
427
+ please tipe
428
+
429
+ s
430
+
431
+ please tipe
432
+
433
+ s
434
+
435
+ please tipe
436
+
437
+ s
438
+
439
+ please tipe
440
+
441
+ a
442
+
443
+ s[0]=s
444
+
445
+ s[1]=s
446
+
447
+ s[2]=s
448
+
449
+ s[3]=a
450
+
451
+ Exception in thread "main" java.lang.NullPointerException
452
+
453
+ at KRY.a(KRY.java:39);
454
+
455
+ at KRY.main(KRY.java:31);
456
+
457
+ ```

2

エラー文書き忘れました。すいません。

2017/01/20 15:08

投稿

datuota00
datuota00

スコア20

test CHANGED
File without changes
test CHANGED
@@ -300,6 +300,28 @@
300
300
 
301
301
  これを実行してみたところこのエラーが出ます。
302
302
 
303
+ ```
304
+
305
+ クラス KRYのメソッド aは指定された型に適用できません。
306
+
307
+ a(s);
308
+
309
+ ^
310
+
311
+ 期待値: KRY
312
+
313
+ 検出値: String[]
314
+
315
+ 理由: 実引数String[]はメソッド呼出変換によってKRYに変換できません
316
+
317
+ エラー1個
318
+
319
+
320
+
321
+
322
+
323
+ ```
324
+
303
325
  何をいっているかはわかるのですがどうしたらいいのか。。
304
326
 
305
327
  何か案はございますでしょうか。

1

問題の不備と改編

2017/01/20 10:46

投稿

datuota00
datuota00

スコア20

test CHANGED
File without changes
test CHANGED
@@ -215,3 +215,91 @@
215
215
  ```
216
216
 
217
217
  とでてしまいますどうしたらいいでしょうか。
218
+
219
+
220
+
221
+ ###追記
222
+
223
+ 問題に不備がありましたのと回答をふまえてコードを下記のようにしてみましたが
224
+
225
+ ```
226
+
227
+ import java.util.Scanner;
228
+
229
+ import java.applet.*;
230
+
231
+ public class KRY {
232
+
233
+
234
+
235
+ public AudioClip audioBass = Applet.newAudioClip(getClass().getResource("./WAV/Bass.wav"));
236
+
237
+ public static void main(String[] argst) {
238
+
239
+
240
+
241
+
242
+
243
+ // 文字をキーボードから入力し、配列に記憶
244
+
245
+ String s[] = new String[5];
246
+
247
+ // Scannerクラスのインスタンスの生成
248
+
249
+ Scanner sc = new Scanner(System.in);
250
+
251
+ for (int i = 0; i < s.length; i++) {
252
+
253
+ System.out.println("文字を入力");
254
+
255
+ // 文字をキーボードから入力し、配列に記憶
256
+
257
+ s[i] = sc.next();
258
+
259
+ }
260
+
261
+
262
+
263
+ for (int i = 0; i < s.length; i++) {
264
+
265
+ System.out.printf("s[%d]=%s\n", i, s[i]);
266
+
267
+
268
+
269
+ switch (s[i]) {
270
+
271
+ case "a":
272
+
273
+ a(s);
274
+
275
+ break;
276
+
277
+ default:
278
+
279
+ break;
280
+
281
+ }
282
+
283
+ }
284
+
285
+
286
+
287
+ }
288
+
289
+
290
+
291
+ public static void a(KRY s) {
292
+
293
+ s.audioBass.play();
294
+
295
+ }
296
+
297
+ }
298
+
299
+ ```
300
+
301
+ これを実行してみたところこのエラーが出ます。
302
+
303
+ 何をいっているかはわかるのですがどうしたらいいのか。。
304
+
305
+ 何か案はございますでしょうか。