前提・実現したいこと
java初心者です。課題を解いているのですが、配列に入ったnullのところでつまずいています。
ここに質問の内容を詳しく書いてください。
3つの配列の中に混じっているnullを表示されないようにしたいのですが、表示されてしまいます。
int num の数値が1の場合「みかんnull男もも」というように表示されます。if文で条件分岐させればよいのではないかと考えたのですが、反映されません。アドバイスお願いします。
java
1public class Main{ 2 public static void main(String[] args){ 3 int num = 1; 4 String[] data=getUserPrfofile(num); 5 if(data==null){ 6 System.out.print("指定された番号は見つかりません"); 7 }else{ 8 for(int i=1;i<data.length;i++){ 9 //0番目の要素は出力しない 10 if(data==null){ 11 continue; 12 } 13 System.out.print(data[i]); 14 } 15 } 16 } 17 static String[] getUserPrfofile(int num){ 18 String []data1={"1","みかん",null,"男","もも"}; 19 String []data2={"2","りんご","まんごー",null,"なし"}; 20 String []data3={"3","きゅうり","とまと",null}; 21 String str=String.valueOf(num); 22 //数値型引数をString型変数に型変換 23 24 if(data1[0].equals(str)){ 25 return data1; 26 } 27 if(data2[0].equals(str)){ 28 return data2; 29 } 30 if(data3[0].equals(str)){ 31 return data3; 32 //各配列の0番目の値とString型に変換した引数を比較 33 }else{ 34 return null; 35 //それ以外はnullを返す 36 } 37 } 38} 39
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/20 07:07