if文の使い方
本に書いてあった問題を解いてみました。
public class Main { public static void main(String[] args) { int seibetsu = 0; int age = 5; System.out.println("こんにちは"); if(seibetsu == 0) { System.out.println("私は男です。"); System.out.println(age + "歳です。"); }else { System.out.println("私は女です。"); } System.out.println("よろしくおねがいします。"); }
DB接続して、データを取り出してみました。
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class Connect { public static void main(String[] args) { try { //jdbcドライバの登録 String driver = "com.mysql.jdbc.Driver"; //DBの指定 String server = "localhost"; String dbname = "test"; String url = "jdbc:mysql://" + server + ":3306/" + dbname + "?useUnicode=true&characterEncoding=EUC_JP"; String user = "root"; String password = ""; Class.forName(driver); //DBとの接続 Connection con = DriverManager.getConnection(url, user, password); //テーブル照会実行 Statement stmt = con.createStatement(); String sql = "select * from testtable"; ResultSet rs = stmt.executeQuery(sql); //変数の宣言と初期化 String NAME = null; int AGE = 0; //テーブル照会結果を出力 while(rs.next()){ NAME = rs.getString("NAME"); AGE = rs.getInt("AGE"); System.out.print("名前:" + NAME + "\t"); System.out.println(AGE + "歳です。"); } //DBのクローズ rs.close(); stmt.close(); con.close(); }catch(SQLException e){ System.err.println("データベース接続に失敗"); e.printStackTrace(); }catch(ClassNotFoundException ex){ System.err.println("指定されたクラスが見つからない"); ex.printStackTrace(); } }
簡単占いのプログラムを組んでみました。
import java.io.IOException; import java.util.Random; import java.util.Scanner; class Main { public static void main(String[] args) throws IOException{ System.out.println("ようこそ占いの館へ"); System.out.println("あなたの名前を入力してください"); //文字入力呼び出し Scanner input = new Scanner(System.in); //名前の入力処理 String name = input.next(); System.out.println("あなたの年齢を入力してください"); //年齢の入力処理 String ageString = input.next(); //int型に変換し、ageに代入 int age = Integer.parseInt(ageString); Random rnd = new Random(); //0~3までの乱数を生成 int fortune = rnd.nextInt(4); System.out.println("占いの結果が出ました!"); String fortune_final = null; switch(fortune) { case 0:fortune_final = "大吉"; break; case 1:fortune_final = "中吉"; break; case 2:fortune_final = "吉"; break; case 3:fortune_final = "凶"; break; } System.out.println(age + "歳の" + name + "さん、あなたの運気は" + fortune_final + "です"); }
計算機のプログラムを組んでみました。
import java.util.InputMismatchException; import java.util.Scanner; //計算機の数字入力処理 class Number1 { public static int Judgment = 0; //aの宣言と初期化 public static int a = 0; //数字を入力 public static void main(String[] args) { //入力処理呼び出し Scanner scanner = new Scanner(System.in); //数値入力 //例外処理 try { System.out.println("数字を入力してください。"); //入力処理 //値が問題なければそのまま入力 a = scanner.nextInt(); Judgment = 1; }catch(InputMismatchException e){ //文字列を入力した場合エラー処理 System.out.println("文字ではなく、数字を入力してください。"); } } } class Formula{ public static void main(String[] args) { //式の値の変数 double value = 0; double Number1 = 0; double Number2 = 0; //入力処理呼び出し Scanner scanner = new Scanner(System.in); //最初の数値 Number1 c = new Number1(); c.main(args); //値を格納 Number1 = c.a; //次の数値 if(c.Judgment == 1) { Number1 d = new Number1(); d.main(args); //値を格納 Number2 = d.a; //計算 if(d.Judgment == 1) { System.out.println("入力した2つの数字を計算します。\n" + "1→足し算/2→引き算/3→掛け算/4→割り算"); //計算処理 //計算 try { System.out.println("数字を入力してください。"); //入力処理 //値が問題なければそのまま入力 int x = scanner.nextInt(); switch(x) { case 1:value = Number1 + Number2; String str1 = "値は" + value + "です。"; System.out.println(str1); break; case 2:value = Number1 - Number2; String str2 = "値は" + value + "です。"; System.out.println(str2); break; case 3:value = Number1 * Number2; String str3 = "値は" + value + "です。"; System.out.println(str3); break; case 4:value = Number1 / Number2; String str4 = "値は" + value + "です。"; System.out.println(str4); break; default:System.out.println("正しい数字を入力してください"); break; } }catch(InputMismatchException e){ //文字列を入力した場合エラー処理 System.out.println("文字ではなく、数字を入力してください。"); } } } }
名前と年齢を表示させる・年齢の文字列チェックもやってみました。
import java.util.InputMismatchException; import java.util.Scanner; class Age{ //他のクラスで使うフィールドjudgment public static int Judgment = 0; public static void main(String[] args){ Scanner scanner = new Scanner(System.in); int age = 0; //年齢入力 //例外処理 try { System.out.println("年齢を入力してください。"); //入力処理 //値が問題なければそのまま入力 age = scanner.nextInt(); System.out.println("あなたの年齢は" + age + "です。"); //文字列無ければJudgmentに1を代入 Judgment = 1; }catch(InputMismatchException e){ //文字列を入力したらエラー処理 System.out.println("ちゃんと数字を入れてください。"); } } } class Name{ public static void main(String[] args){ Scanner scanner = new Scanner(System.in); String name = null; //名前入力 //例外処理 try { System.out.println("名前を入力してください。"); //入力処理 //値が問題なければそのまま入力 name = scanner.nextLine(); System.out.println("あなたの名前は" + name + "です。"); }catch(InputMismatchException e){ //文字列を入力したらエラー処理 System.out.println("ちゃんと名前を入れてください。"); } } } class InputTest{ public static void main(String[] args){ Age o = new Age(); o.main(args); //Judgmentが1ならば名前の入力処理Nameを実行 if(Age.Judgment == 1) { Name p = new Name(); p.main(args); } }