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

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

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

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

Q&A

解決済

3回答

1468閲覧

java 入力された都道府県が不適な場合、北海道を設定するロジック教えていただけますでしょうか。

woooo

総合スコア26

Java

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

0グッド

0クリップ

投稿2018/10/10 00:32

編集2018/10/10 00:40

昨日に引き続き都道府県に関することです。

都道府県のリストを作成し、入力された値と照らし合わせるロジックを組もうとしましたが、
良いのが思いつきませんでした。

どなたか表題にあるロジックをご教授いただけますでしょうか。

java

1// 都道府県のリスト 2 List<String> prefList = Arrays.asList("北海道", "青森県", "岩手県", "宮城県", "秋田県", "山形県", "福島県", "茨城県", "栃木県", "群馬県", 3 "埼玉県", "千葉県", "東京都", "神奈川県", "新潟県", "富山県", "石川県", "福井県", "山梨県", "長野県", "岐阜県", "静岡県", "愛知県", "三重県", 4 "滋賀県", "京都府", "大阪府", "兵庫県", "奈良県", "和歌山県", "鳥取県", "島根県", "岡山県", "広島県", "山口県", "徳島県", "香川県", "愛媛県", 5 "高知県", "福岡県", "佐賀県", "長崎県", "熊本県", "大分県", "宮崎県", "鹿児島県", "沖縄県"); 6 7 8 int judge = 47; 9 10 for (String prefecture : prefList) { 11 if (prefecture.equals(row.getAddress1())) { 12 judge--; 13 break; 14 } 15 if (judge == 0) { 16 row.setAddress1("東京都"); 17 } 18 }

ソースを変更しました。

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

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

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

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

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

guest

回答3

0

すでにベストアンサーが付いていますが、

java

1import java.util.Arrays; 2import java.util.List; 3 4public class Prefectures { 5 List<String> prefList = Arrays.asList("北海道", "青森県", "岩手県", "宮城県", "秋田県", "山形県", "福島県", "茨城県", "栃木県", "群馬県", 6 "埼玉県", "千葉県", "東京都", "神奈川県", "新潟県", "富山県", "石川県", "福井県", "山梨県", "長野県", "岐阜県", "静岡県", "愛知県", "三重県", 7 "滋賀県", "京都府", "大阪府", "兵庫県", "奈良県", "和歌山県", "鳥取県", "島根県", "岡山県", "広島県", "山口県", "徳島県", "香川県", "愛媛県", 8 "高知県", "福岡県", "佐賀県", "長崎県", "熊本県", "大分県", "宮崎県", "鹿児島県", "沖縄県"); 9 10 public String getPrefecture(String target) { 11 return prefList.stream().filter(pref -> pref.equals(target)).findFirst().orElse(prefList.get(0)); 12 } 13}

合致する条件をフィルタ→その先頭を取得→とれなければ元Listの先頭を取得

で十分ではないかと。

投稿2018/10/10 01:54

A-pZ

総合スコア12011

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

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

0

ベストアンサー

java

1if(!preList.contains(row.getAddress1())){ 2 row.setAddress1("北海道"); 3}

投稿2018/10/10 00:43

swordone

総合スコア20649

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

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

woooo

2018/10/10 00:45

ありがとうございます。
guest

0

まず前提として何をもって不適とするのでしょうか?
そこがわからないと回答しかねます。

List要素に入力された値と一致する物があるかどうかであれば、contains()を使用すれば良いのではないでしょうか

投稿2018/10/10 00:47

terrace

総合スコア249

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

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

terrace

2018/10/10 00:48

あっもう解答ついてたすみません
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.49%

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

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

質問する

関連した質問