Java Basic Level3 〜About String class〜

イントロダクション

私事ですが、以前に書いた記事を再度書き直しわかりやすくしようと思いました。一応、国際化対応しておきます。※英語圏の人は何とか読んでください

はじめの記事は、Javaを始めるのに一番はじめのプログラムを作成するところからはじめます。色々と思うところはあると思いますが、以下の点に留意してもらって、とにかくはじめてみるのが良いと思います。

とりあえず、実行と解説をして見ました。

  1. 「Javaとはなんぞや?」というのはやってから理解すれば良いと思います。
  2. 慌てずにのんびりやりましょう(笑)
  3. 「知識」と「技術」の両方を使用するので「頭で理解」と「手を動かす」の両方が必要です。
  4. インプット(座学)とアウトプット(プログラムの実行・作成)を両方やるようにしましょう。

「Javaとはなんぞや?」の答えに関しては、作って、動かして、オブジェクト指向がわかった頃に答えは出ると思います。

Introduction

As for me, I will rewrite my blog for make understand easy. i will internationally.

The first article begins by creating the first program to start Java. Let’s have fun!

I think that answers will come out when making, executing, and knowing object orientation.

ロードマップ

  1. プログラムを初めて作る人向けです。コンソール画面に「Hello World」と表示するプログラムを作成します。→Mainメソッドについて理解する

  2. 計算するプログラムを作成します。計算するためには「変数」を使用する必要があります。→変数と演算子について理解する

  3. 演算子「+」「-」「++」などを使う方法、考え方を理解

  4. 文字を操作するプログラムを作成します。文字を切ったり、つなげたりして文を編集するプログラムを作成します。→文字列クラス「String」の理解【今回】

  5. Boolean型の使い方やプログラム引数など、条件分岐やループ文などで使用します。

  6. IF文の書き方と使いかた

Road Map

  1. For those who create programs for the first time. create program for display “Hello World” on the console screan.→ To understand the main method
  2. Create program for calcurate. In order to calcurate it is nessesary to use “valiable”.→To understand “valiable” and “operator”
  3. How to use operators in java code.
  4.  Create program for manipurate characters. to edit sentencces by cutting, connecting characters.→To understand String classthis time
  5. How to use Boolean and program argument
  6. How to use if statement

文字列操作(Stringクラス)

Javaで文字を扱うときに使用するデータ型(変数の型)
として「char」と「String」があります。
charはプリミティブ型というカテゴリのデータ型で、1文字のみが変数にセットできます。「==」で比較します。
Stringは参照型(クラス)というカテゴリのデータ型で、複数の文字を変数にセットできます(なので文字列)。比較メソッド(.equals())を使用します。

⑴初期化するときは下のようにやります。

// 文字(1文字だけ)
char a = ‘a’; // シングルクォーテーション
String a = “a”; // ダブルクォーテーション

⑵比較するときは、charは「==」を使用します。
Stringはメソッドを使用します。

String a = “a”;
a.equals(“a”); // trueが出力されます。

※通常、変数のにNullが入っている場合にNullPointerExceptionで落ちてしまうので「"a".equals(a)」と記述します。

兎にも角にも、コードをみてみいないと
なんとも言えないのでこちらから
ダウンロードしてください。

String manipulation(About String Class)

if you would like to manipulate String or charactor, you can use String class and char valiable(Charactor class)

⑴ when initializing, you can wite like this

char a = ‘a’; // single quote
String a = “a”; // double quote 

⑵ how to campare charctor and String

"char" is primitive data. and you can compare using "=="

<Ex1>
char a = 'a'; iif (a == 'a') { ...};

"String" is class. and you can compare using ".equals()"

<Ex2>
String a = "a"; if (a.equals("a")) { ...};
※ usually, we write 「"a".equals(a)」.cause if a valiable is Null then get "NullPointer Exception".

<問題>

・プログラム引数に「abc」「def」を渡してその引数を
以下のようにコンソールに出力してください

<Question>
・using program argument, and output 「abc」「def」to console.

——————————————————
①引数1: abc
②引数2: def
——————————————————

・上記の表示を行なった後にchar型の値「G」と「E」を
①と②の最後の部分に追加して表示してください。

・after output console. add "G" and "E" on ①, ②

※String型の変数の後にchar型を連結できればOKです。
Eclipseの画面では下のような画面でプログラム引数を追加します。

Stringクラスのメソッド使用例

public void testString() {
    // 文字列を比較した場合
    System.out.println("*** String#equals() Sample1 ****");
    if ("test".equals("tezt")) {
        System.out.println("\"test\"と\"tezt\"は等しいです。");
    } else if ("test".equals("tezt") == false) {
        System.out.println("\"test\"と\"tezt\"は等しくありません。");
    } else {
        // 実際は例外しか返ってこないので意味のないコード
        // 想定外のケースも考慮に入れる
        System.out.println("trueもfalseも帰ってこなかった場合。");
    }
    System.out.println("*** String#equals() Sample2 ****");
    // 変数に入れた文字列を比較した場合
    String str = "test";
    String str2 = "tezt";
    if (str.equals(str2)) {
        System.out.println("\"test\"と\"tezt\"は等しいです。");
    } else {
        System.out.println("\"test\"と\"tezt\"は等しくありません。");
    }

    System.out.println("*** String#equalsIgnoreCase() Sample1 ****");
    if ("test".equalsIgnoreCase("tezt")) {
        System.out.println("\"test\"と\"tezt\"は等しいです。");
    } else if ("test".equalsIgnoreCase("Test") == false) {
        System.out.println("\"test\"と\"Test\"は等しくありません。");
    } else if ("test".equalsIgnoreCase("Test")) {
        System.out.println("\"test\"と\"Test\"は等しいです。");
    } else {
        // 実際は例外しか返ってこないので意味のないコード
        // 想定外のケースも考慮に入れる
        System.out.println("trueもfalseも帰ってこなかった場合。");
    }

    System.out.println("*** String#isEmpty() Sample1 ****");
    if ("".isEmpty()) {
        System.out.println("文字列は空です。");
    }
    String tmp = null;

    System.out.println("*** String#isEmpty() Sample2 ****");
    try {
        if (tmp.isEmpty()) {
            System.out.println("文字列はNULLです。");
        }
    } catch (NullPointerException e) {
        System.out.println("実行するとNullPoineterExceptionで落ちる。");
    }
}

Stringクラスのメソッド使用例2

String str = "0123456789ABCABC";
System.out.println("*** String#contains() Sample1 ****");
if (str.contains("012")) {
    System.out.println(str + "は「012」を含んでいます。");
}
System.out.println("*** String#contains() Sample1 ****");
if (str.contains("014")) {
    System.out.println(str + "は「014」を含んでいます。");
} else {
    System.out.println(str + "は「014」を含んでいません。");
}

System.out.println("*** String#endsWith() Sample1 ****");
if (str.endsWith("ABC")) {
    System.out.println(str + "は「ABC」を末尾にあります。");
}

System.out.println("*** String#endsWith() Sample1 ****");
System.out.println(str + "は「ABC」の文字列が" + str.indexOf("ABC") + "番目に出現します。");
System.out.println(str + "は「ABC」の文字列が最後に出現するのは" + str.lastIndexOf("ABC") + "番目に出現します。");

整形する

String#format(書式文字列)のような形で記述します。
書式文字列にはただいま%d時です。というような書き方をして「%d」に値をセットする形です。

String.format("ただいま%d時です。", 12); // ただいま12時です

サンプルプログラム

    @Test
    public void testFormat() {
        String str = "これは%d円です";
        System.out.println(String.format(str, 12));

        Date date = new Date();
        String str1 = "いま%tk時です";
        System.out.println(String.format(str1, date));

    }

でわでわ。。。
see you next time. have a good day!

関連リンク一覧

Java Basic Level2 〜Arithmetic Calculate 四則計算と変数の使い方〜

イントロダクション

私事ですが、以前に書いた記事を再度書き直しわかりやすくしようと思います。


はじめの記事は、Javaを始めるのに一番はじめのプログラムを作成するところからはじめます。「Javaとはなんぞや?」というのはやってから理解すれば良いと思います。まぁ慌てずにのんびりやりましょう(笑)
<デバックしながら解説>

→作って、動かして、オブジェクト指向がわかった頃に答えは出ると思います。

Introduction

As for me, I will rewrite my blog for make understand easy. i will internationally.

The first article begins by creating the first program to start Java. Let’s have fun!

I think that answers will come out when making, executing, and knowing object orientation.

ロードマップ

  1. プログラムを初めて作る人向けです。コンソール画面に「Hello World」と表示するプログラムを作成します。→Mainメソッドについて理解する
  2.  計算するプログラムを作成します。計算するためには「変数」を使用する必要があります。→変数と演算子について理解する【今回】
  3. 文字を操作するプログラムを作成します。文字を切ったり、つなげたりして文を編集するプログラムを作成します。→文字列クラス「String」の理解

Road Map

  1. For those who create programs for the first time. create program for display “Hello World” on the console screan.→ To understand the main method
  2. Create program for calcurate. In order to calcurate it is nessesary to use “valiable”.→To understand “valiable” and “operator”this time
  3.  Create program for manipurate characters. to edit sentencces by cutting, connecting characters.→To understand String class

計算プログラムについて(About caluculate program)

変数の宣言方法

「データ型 変数名;」のように記述します。
int num;
double d;
String moji;

この変数の宣言は宣言した時に変数にはデフォルト値が設定されます。
なので、具体的にどのような値が入るのかプログラムをみただけではわかりません。

変数の初期化方法

「データ型 変数名 = 値;」のように記述します。
int num = 1;
double d = 0.2;
String moji = "文字列";

変数の初期化に関しては、宣言の時と違い、どのような値が入っているのか、わかります。

変数の型について

これは丸暗記になります。以下の通りです。

データ型 意味
int型 整数を扱うためのデータ型
double型 小数点を含む数を扱うためのデータ型
String型 文字列を扱うためのデータ型

他にもたくさんありますが、まずはこの3つを覚えましょう。

Declearing valiable

wirte like this. →"DataType" "valiable name" = "value";
int num = 1;
double d = 0.2;
String moji = "文字列";

四則演算の方法

< 内容 >                  < 例 >
「+」足し算         int num = 1 + 1; // 変数「num」に2が入る
「-」引き算         int hiki = 2 – 1;   // 変数「hiki」に1が入る
」掛け算         int kake = 1 1; // 変数「kake」に1が入る
「/」割り算         int wari = 4 / 2; // 変数「wari」に2が入る

How to four arithmethic calculation

※変数=valiable
< sight >                  < example >
「+」addition          int num = 1 + 1; // 変数「num」に2が入る
「-」subtraction      int hiki = 2 – 1;   // 変数「hiki」に1が入る
」multiplication   int kake = 1 1; // 変数「kake」に1が入る
「/」division            int wari = 4 / 2; // 変数「wari」に2が入る

足し算を行なってみる

// サンプルコード
public class Test1_2 {
    public static void main(String[] args) {
      // int型「num1」を初期化する
      int num1 = 1;
      //int型「num2」を初期化する
    int num2 = 2;
      // String型「moji」を初期化する
      String moji = "1+2=";
      // int型「result」にnum1とnum2を足し算した結果を代入
      int result = num1 + num2;
      // 「moji」の次に「result」を文字列として繋げて表示する
      System.out.println(moji + result);
    }
}

ちなみに、変数の宣言は下のように書きます。宣言後、値を代入して使用します。

int num;
num = 9;

その他の演算(計算に使用)
< 内容 >                              < 例 >

「++」インクリメント          int num = 1++; // 変数「num」に2が入る
「–-」デクリメント               int hiki = 1–;    // 変数「hiki」に0が入る
「%」剰余                            int amari = 3 % 2 // 変数「amari」に1が入る

具体的には、下のように実装します。

  int start = 30;
  for (int i = 0; i < 3; i++) {
      // startをデクリメント
      start--;
      System.out.println("デクリメント後: " + start);
      System.out.println("そして、2で割ったときの剰余: " + start % 2);

  }

Other calculation

<サンプル>: ダウンロードできます。
<sample> : you can download.

// 変数宣言

int num1;

// 変数に値0を再セット、以前の値は削除される

num1 = 0;

public void testMethod() {
/*
 * 変数の初期化
 *  変数の宣言時に、値を代入する
 * 変数 = 値(代入)
 * valiable initialization
 * when you initialize valiable set values
 * valiable=value(substitution)
 */
 int num2 = 10;
 // 1.足し算
 num1 = num1 + num2 + 2;
 // 2.引き算
 num1 = num1 * (num1 – num2);
 // 3.掛け算
 num1 = num1 * 3;
 // 4.割り算
 num1 = num1 / 2;
 // 計算結果を表示
 System.out.println(“計算結果” + num1);
}

問題の前提条件

四則計算処理を使用して以下のような文字列をコンソールに出力してください。

[ 問題1 ]
mondai1メソッドを作成し、コンソールに以下を出力してください。
出力内容
————————–
「2 + 2 は 4です」
————————–

[Question1]
Create a method named "mondai1" for output as berrow
output sample
————————–
「2 + 2 は 4です」
————————–

 

[ 問題2 ]
mondai2メソッドを作成して、コンソールに以下を出力してください。
————————–
「10 % 3 は 1です」
————————–

[Question2]
Create a method named "mondai2" for output as berrow
output sample
————————–
「10 % 3 は 1です」
————————–

[ 問題3 ]
mondai3メソッドを作成して、コンソールに以下を出力してください。
————————–
初期値 = 30
デクリメント後: 29
そして、2で割ったときの剰余: 1
デクリメント後: 28
そして、2で割ったときの剰余: 0
デクリメント後: 27
そして、2で割ったときの剰余: 1
————————–

[Question2]
Create a method named "mondai3" for output as berrow
output sample
————————–
init vlaue = 30
after decerment: 29
surplus: 1
after decrement: 28
surplus: 0
after decrement: 27
surplus: 1
————————–


今日は、ここまでです。
でわでわ。。。
Today so far. see you next time. have a good day!

今回の記事には全く関係ありませんが、Javaでこんなアプリも作れます。JavaFX + Gluon


Java Basic

 Eclipse セットアップ

  1. Java Install Eclipse〜開発ツールのインストール〜
  2. TensorFlow C++環境〜EclipseCDTをインストール〜
  3. Setup OpenGL with JavaJOGLを使う準備 for Eclipse
  4. Eclipse Meven 開発手順〜プロジェクトの作成〜
  5. Java OpenCV 環境セットアップ(on Mac)
  6. Eclipse SceneBuilderを追加する
  7. JavaFX SceneBuilder EclipseSceneBuilder連携~

Java Basic Level 1 〜Hello Java〜

イントロダクション

私事ですが、以前に書いた記事を再度書き直しわかりやすくしようと思います。一応国際化対応しておきます。

はじめの記事は、Javaを始めるのに一番はじめのプログラムを作成するところからはじめます。「Javaとはなんぞや?」というのはやってから理解すれば良いと思います。まぁ慌てずにのんびりやりましょう(笑)

まずは、以下の部分に注力してください。

  1. プログラムを作って
  2. プログラムを動かして
  3. 自分の考えた理論が正しかったことを確認

上記のことをひたすら繰り返してください。最後の「自分の考えた理論」が正しくなかった場合は、「なんでだろ?」と考えるようにしましょう。
**答えが出ない時もあると思うので、考えすぎに注意です**。

今回の内容をチュートリアル動画にしました。


Introduction

As for me, I will rewrite my blog for make understand easy. i will internationally.

The first article begins by creating the first program to start Java. Let's have fun!

I think that answers will come out when making, executing, and knowing object orientation.

ロードマップ

  1. プログラムを初めて作る人向けです。コンソール画面に「Hello World」と表示するプログラムを作成します。→Mainメソッドについて理解する【今回
  2.  計算するプログラムを作成します。計算するためには「変数」を使用する必要があります。→変数と演算子について理解する
  3. 文字を操作するプログラムを作成します。文字を切ったり、つなげたりして文を編集するプログラムを作成します。→文字列クラス「String」の理解

Road Map

  1. For those who create programs for the first time. create program for display "Hello World" on the console screan.→ To understand the main methodthis time
  2. Create program for calcurate. In order to calcurate it is nessesary to use "valiable".→To understand "valiable" and "operator"
  3.  Create program for manipurate characters. to edit sentencces by cutting, connecting characters.→To understand String class

Hello World

まずは「写経」です。「創造は模倣に始まる」と言います。

何も考えずとりあえず写経しましょう。。。と言いたいところですが。開発する環境がないことには何も始まりません。開発環境のセットアップはここのページを参照してください。

あと、動かして見たとき(遊んでみたとき)はこんな感じで表示されます。

細かい解説をしてみました。

クラスの概念について

開発環境がセットアップできたら、早速写経します。下のコードは、カラフルなコードになってしまいましたが、色の意味は以下の通りです。

クラスの名前→緑
class name → green

メイン・メソッド→紫
main method → purple
メソッド呼び出し→茶色
call method → brown
スコープ→赤 ※囲いのこと"{"と"}”
scope → red "{" and "}"

とりあえずはサンプルコードです。※Gitからダウンロードできます。そしてGit関連の記事は下にリンクがありますのでどうぞ。

public class HelloJava {
   public static void main(String[] args) {
      System.out.println("Hello World");
   }
}

実行すると以下のように表示されます。
after execute program, you can see like this

あれ?間違ったかな?

is it my mistake?

問題(Question)

<問1>
"Hello World"ではなく、"Step1"と表示するようにプログラムを書き換えてください。
<Question1>
Please rewrite program to display "Step1" instead "Hello World"

<問2>
"Hello World"と表示した後に"Tiger! Gaaa!!"と表示してください。
Please display "Tiger! Gaaa!" after displaying "Hello World"

国際化対応で記載しました。次回は計算するプログラムを作ります。

Eclipse セットアップ

  1. Java Install Eclipse〜開発ツールのインストール〜
  2. TensorFlow C++環境〜EclipseCDTをインストール〜
  3. Setup OpenGL with JavaJOGLを使う準備 for Eclipse
  4. Eclipse Meven 開発手順〜プロジェクトの作成〜
  5. Java OpenCV 環境セットアップ(on Mac)
  6. Eclipse SceneBuilderを追加する
  7. JavaFX SceneBuilder EclipseSceneBuilder連携~

Java Basic一覧

  1. Java Basic Level 1 〜Hello Java〜
  2. Java Basic Level2 〜Arithmetic Calculate〜
  3. Java Basic Level3 〜About String class〜
  4. Java Basic Level 4〜Boolean〜
  5. Java Basic Level 5〜If Statement〜
  6. Java Basic Summary from Level1 to 5
  7. Java Basic Level 6 〜Traning of If statement〜
  8. Java Basic Level8 〜How to use for statement〜
  9. Java Basic Level 8.5 〜Array〜
  10. Java Basic Level 9〜Training of for statement〜
  11. Java Basic Level 10 〜While statement 〜
  12. Java Basic Swing〜オブジェクト指向〜
  13. Java Basic Swing Level 2〜オブジェクト指向2〜
  14. サンプル実装〜コンソールゲーム〜
  15. Java Basic インターフェース・抽象クラスの作り方
  16. Java Basic クラスとは〜Step2_1〜
  17. Java Basic JUnit 〜テストスイートの作り方〜

Git関連

  1. Java Git clone in Eclipse 〜サンプルの取得〜
  2. Eclipse Gitリポジトリの取得 GitからソースをPullしよう〜
  3. IntelliJ IDEA GitGitリポジトリからクローン〜

Java Basic network 〜googleの検索画面へアクセス〜

イントロダクション

前回までで、コマンドの入力→結果の表示 + コマンド実行クラス追加の作成を行いました。

今回は、画面から少し離れて、googleの検索画面を開く所を実装します。

設計:クローリング方法

以前、クローリング処理をどのようにやるか?を調べました。

その時に示した手順をJavaのプログラムで実行しようと思います。

以下の手順になります。

  1. Googleの検索テキストボックスに文字列を入力する
  2. 適当なサイトの中身を読み記載内容を自分の中でまとめます。
  3. まとめた内容から理解します。
    ※「理解する」というのが抽象的ですので「〜はXXXをする○○○である」というふうに情報を
      整理することを指し示す事とします。

上の手順は、人間がやるときの手順になるのでプログラムが実行するときの手順に修正します。

  1. Googleの検索画面にアクセスする
  2. Googleの検索画面に検索キーワードを入力する
  3. Googleの検索画面の検索ボタンを押下する
  4. 検索した結果のURLリストからHTMLを取得する
  5. 取得したHTMLよりページの解析を行う
  6. 解析した結果をまとめる(人間が理解できるようにまとめる)

以上のような手順になります。

実装すること

まずは、上記の「1. Googleの検索画面にアクセス」を実装しようと思います。

<実行手順>
・コマンド画面より「acc」コマンドを入力してGoogle画面にアクセスする

まずはここからですので。。。

*コマンド入力に関してはこちらを参照してください

作成するもの

前回まで作成した状態では、以下の手順でコマンドクラスを追加できます。

  1. プロパティファイルに行を追加
  2. CommandIFを実装したクラスを追加

    早い話が。。。

    コマンドを追加してGoogleの検索画面にアクセスしよう!ということです。

    実装部分

    プロパティファイルにキーと値を追加

以下のようにクラスを追加します。

Google検索画面にアクセスする

ちょっと調べてみた所、スレイピング(クローリングと同じ)は規約違反になるようです。

https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13153706228

じゃ、合法的にやりましょう

世間では、「データサイエンス」なるものが流行っているのでBigデータ利用も増えてきています。(結構前から?) 2018/0701現在

というわけでBigデータから情報を取得する方向に切り替えて行います。

ちょっと調べて、チョチョイとは行かなそうなので次回にします。

Java Basic GUI作成〜コマンド追加方法〜

イントロダクション

前回までで、「コマンド画面」から入力した文字をコマンドとして取得して、プロパティファイルに登録してある、完全クラス名よりクラスを新規で追加して実行できるように修正しました。

今回のやること

ようやく・・・クローリングに着手できます。
今までやってきたことで、「コマンド1個」につき「処理クラス1個」の関係を動的に作成出来るようになりました。

<手順>
1. プロパティファイル「CmdCls.properties」にコマンド=完全クラス名となるように行を追加する。

(例)[CmdCls.properties]
すでに登録されているクラスが以下の部分です。
「acc」がコマンド、処理を実行するのは「UrlAccessor」クラスです。

acc=jp.zenryoku.apps.UrlAccessor

プロパティを追加する場合は、以下のようになります。
「hello」がコマンドで「Hello」がクラスです。

acc=jp.zenryoku.apps.UrlAccessor
hello=jp.zenryoku.apps.Hello

ちょいとクラスを作成してみました。

Helloクラス

```java
public class Hello implements CommandIF {
public void execute() {
System.out.println("Hello Workd");
}
}
```
コマンドで使用するクラスには「CommandIF」インターフェースを実装する必要があります。逆に言うと上記のインターフェースを実装してプロパティファイルに追加すればコマンドで実行できます。

プロパティファイル[CmdCls.properties]

acc=jp.zenryoku.apps.UrlAccessor
hello=jp.zenryoku.apps.Hello

実行結果

クローリング処理の追加は次回やります。



## ポリモーフィズム
CommandIF(インタフェース)を使用したポリモーフィズムの実行動画があります。

Eclipse セットアップ

  1. Java Install Eclipse〜開発ツールのインストール〜
  2. TensorFlow C++環境〜EclipseCDTをインストール〜
  3. Setup OpenGL with JavaJOGLを使う準備 for Eclipse
  4. Eclipse Meven 開発手順〜プロジェクトの作成〜
  5. Java OpenCV 環境セットアップ(on Mac)
  6. Eclipse SceneBuilderを追加する
  7. JavaFX SceneBuilder EclipseSceneBuilder連携~

Java Basic一覧

  1. Java Basic Level 1 〜Hello Java〜
  2. Java Basic Level2 〜Arithmetic Calculate〜
  3. Java Basic Level3 〜About String class〜
  4. Java Basic Level 4〜Boolean〜
  5. Java Basic Level 5〜If Statement〜
  6. Java Basic Summary from Level1 to 5
  7. Java Basic Level 6 〜Traning of If statement〜
  8. Java Basic Level8 〜How to use for statement〜
  9. Java Basic Level 8.5 〜Array〜
  10. Java Basic Level 9〜Training of for statement〜
  11. Java Basic Level 10 〜While statement 〜
  12. Java Basic Swing〜オブジェクト指向〜
  13. Java Basic Swing Level 2〜オブジェクト指向2〜
  14. サンプル実装〜コンソールゲーム〜
  15. Java Basic インターフェース・抽象クラスの作り方
  16. Java Basic クラスとは〜Step2_1〜
  17. Java Basic JUnit 〜テストスイートの作り方〜

Git関連

  1. Java Git clone in Eclipse 〜サンプルの取得〜
  2. Eclipse Gitリポジトリの取得 GitからソースをPullしよう〜
  3. IntelliJ IDEA GitGitリポジトリからクローン〜