gradle学習ノート(二)Grovy基礎
前言
gradle学習ノート(一)でgradle学習の基礎として言えば、GrouvyとDSLです.このノートは全部Groovyを勉強します.まずgroovyを紹介して、学習ステップを始めます.
profile:Groovy is a powerful、optinally typed and dynamic lagge、with static-typing and static complation capability、for the Java plot form aimed atving developer productivity productivity.thanks to a concity、ファミリーのダイナミックな機能です.Javaプラットフォームの中の簡潔で、慣れていて、学びやすい言語であり、開発者の効率を大いに高めています.
Grouvyはスクリプト言語に属します.Grouvyはより簡単で、より柔軟な文法を提供しており、実行時に動的にタイプ検査を行うことができます.
Groovyスクリプトが実行されると、GrovyはJavaクラスのバイトコードにコンパイルし、JVMによってJavaクラスを実行します.だから、実行する時、GrouvyコードはすでにJavaコードにコンパイルされていますので、JVMは自分で実行するのがGrouvyコードだとは全然分かりません.これはGrouvyの利用可能性を保証します.
インストールgroovy
公式サイトDownload groovyでは、公式サイトの手順でダウンロードしてインストールします.
自分で使うのはmacで、Homebrewがインストールされています.直接コマンドラインを入力してインストールします.
Groovy基礎文法知識:
もっと多い文法の公式サイトを紹介します. Grouvy注釈タグは、Javaと同様に、単一の行の注釈 Grouvy文は、セミコロン を省略することができます. Grouvyのすべての種類、方法などはすべてpublicで、別に指定しない限り. Grouvyは、動的タイプをサポートし、 関数を定義する場合、パラメータの種類を指定しなくてもいいです. Grovyにおける関数の戻り値は、タイプであってもよい. 関数戻りタイプが指定されているなら、 もっと多いのはIBMがGrovyに精通していることを見てください.Grouvyをすぐに知ることができます. もっと多いのはDifferences with Javaを見てください.GrouvyとJavaの違いを理解してください. Grouvyの基本的なタイプを紹介します.
1.基本データタイプ
Groovyは世界中の全てのものを対象にしており、基本的なデータタイプはありません.だからJavaの中のbyte、int、bollan、charなどはすべてそれらの包装のタイプです.公式サイトではこのように説明しています.
Grouvy Collection
Groovyには容器類が三つあります. Listリストは、JavaのArayList に対応しています. Mapキーテーブルは、JavaのLinked HashMap に対応しています. Range範囲、Listの拡張 2.1リストリスト
セットを作成します.Javaと同じです.
Ranges allow you to create a list of sequential values.The can be used as List since Range extens java.util.List.RangesはListの変形体であり、順序のある集合を作成するのに便利である.は、 を作成する.は、 とする.
Rangesを作成:
公式文書:Imports
groovyデフォルトのコンダクタンス:
結語:
基本的な文法とデータの種類が終わったら、Javaの中の小さなプログラムを書き始めます.フィボナッチの数列などを印刷します.でも、私たちはgradleのために基礎を作っています.脚本言語はgroovyよりいいです.はい、学習の過程で、groovyのあるところとpythonのようなところも発見されました.groovyを勉強した後、他のものは前倒しに相当すると思います.うん、いいです
これからGroovyの難点とポイントを勉強します.gradleで一番多く使うのはそれです!!
Groovy APIの別のドキュメント:Grovy JDK API Dcumenation
学習コードはgithubにあります.
gradle学習ノート(一)でgradle学習の基礎として言えば、GrouvyとDSLです.このノートは全部Groovyを勉強します.まずgroovyを紹介して、学習ステップを始めます.
profile:Groovy is a powerful、optinally typed and dynamic lagge、with static-typing and static complation capability、for the Java plot form aimed atving developer productivity productivity.thanks to a concity、ファミリーのダイナミックな機能です.Javaプラットフォームの中の簡潔で、慣れていて、学びやすい言語であり、開発者の効率を大いに高めています.
Grouvyはスクリプト言語に属します.Grouvyはより簡単で、より柔軟な文法を提供しており、実行時に動的にタイプ検査を行うことができます.
Groovyスクリプトが実行されると、GrovyはJavaクラスのバイトコードにコンパイルし、JVMによってJavaクラスを実行します.だから、実行する時、GrouvyコードはすでにJavaコードにコンパイルされていますので、JVMは自分で実行するのがGrouvyコードだとは全然分かりません.これはGrouvyの利用可能性を保証します.
インストールgroovy
公式サイトDownload groovyでは、公式サイトの手順でダウンロードしてインストールします.
自分で使うのはmacで、Homebrewがインストールされています.直接コマンドラインを入力してインストールします.
brew install groovy
インストール後にネーミングラインを入力してインストールするかどうかテストします.インストールが成功すれば現在のバージョンを出力します.groovy -version
公式の上でdown Loadしてそのzipの包みをおりることができて、Grouvyのすべての文書はその中にあって、調べるのは便利な多いです.Groovy基礎文法知識:
もっと多い文法の公式サイトを紹介します.
//
、複数の行の注釈/* */
、および文書の注釈/** */
をサポートする.def
を使用して変数、方法を定義します.(Grouvyはタイプ推定を用いて判断する)def value = "this is a string";//String.Class
def value = 1;//Integer.Class
println value.class;
def function(var1 , var2){
...
varResult; //
}
def
キーワード定義関数を追加する必要はないかもしれない.String function(var1 , var2){
...
return "StringResult"; //
}
1.基本データタイプ
Groovyは世界中の全てのものを対象にしており、基本的なデータタイプはありません.だからJavaの中のbyte、int、bollan、charなどはすべてそれらの包装のタイプです.公式サイトではこのように説明しています.
def a = 1
assert a instanceof Integer
// Integer.MAX_VALUE
def b = 2147483647
assert b instanceof Integer
// Integer.MAX_VALUE + 1
def c = 2147483648
assert c instanceof Long
// Long.MAX_VALUE
def d = 9223372036854775807
assert d instanceof Long
// Long.MAX_VALUE + 1
def e = 9223372036854775808
assert e instanceof BigInteger
2.容器類Grouvy Collection
Groovyには容器類が三つあります.
セットを作成します.Javaと同じです.
(list1) //
def list3 = ['a', 1, 'a', 'a', 2.5, 2.5f, 2.5d, 'hello', 7g, null, 9 as byte] // , , null" data-snippet-id="ext.ef9a96ec26daf03a854730e0fce9d0de" data-snippet-saved="false" data-codota-status="done">def list = [5, 6, 7, 8] //
assert list[2] == 7 // 2
assert list instanceof java.util.List // java.util.List
def list2 = new ArrayList(list1) //
def list3 = ['a', 1, 'a', 'a', 2.5, 2.5f, 2.5d, 'hello', 7g, null, 9 as byte] // , , null
要素を取得:def list = [1,'2',true,"stringFour",null];//
println list.size();//
try{
list.get(-1);
}catch(e){
println(e.toString());
}
println list[-2];//
println list.getAt(-2);// getAt() ,
集合体中// , each()
list.each{
println "Item $it" //it ,
}
// ,eachWithIndex()
list.eachWithIndex{it,i ->
println("$i : $it");
}
2.2 Mapキーの値表[:]
を使用してMapを作成します.def map = [name:"zhangsan", "sex":true, id:123];// Map
println(map.size());
//
println map.get("name");
println map.name;
//
map.addone = "addedOne";
map.put("aa",false);
Map巡回:// `entry` is a map entry
map.each { entry ->
println "Name: $entry.key Age: $entry.value"
}
// `entry` is a map entry, `i` the index in the map
map.eachWithIndex { entry, i ->
println "$i - Name: $entry.key Age: $entry.value"
}
// Alternatively you can use key and value directly
map.each { key, value ->
println "Name: $key Age: $value"
}
// Key, value and i as the index in the map
map.eachWithIndex { key, value, i ->
println "$i - Name: $key Age: $value"
}
2.3 Range類Ranges allow you to create a list of sequential values.The can be used as List since Range extens java.util.List.RangesはListの変形体であり、順序のある集合を作成するのに便利である.
..
を使用して、左右に含まれるRange ..<
を使用して左に含まれるものを作成し、右に含まれないものをRange Rangesを作成:
def range = 5..8;// Range
range = 5..<8; // 8, 8
println range.from +", " +range.to;
Range巡回://for
for (i in range) {
println "Hello ${i}"
}
//each() , List
(1..10).each { i ->
println "Hello ${i}"
}
// , switch :
switch (year) {
case 1..10: interestRate = 0.076; break;
case 11..25: interestRate = 0.052; break;
default: interestRate = 0.037;
}
3.Grouvyガイドバッグ公式文書:Imports
groovyデフォルトのコンダクタンス:
import java.lang.*
import java.util.*
import java.io.*
import java.net.*
import groovy.lang.*
import groovy.util.*
import java.math.BigInteger
import java.math.BigDecimal
Grouvyがデフォルトでこれらのカバンを導いたと思っていますので、直接これらのカバンの種類を使うことができます.もっと多いパッケージ方式は公式文書を見てください.結語:
基本的な文法とデータの種類が終わったら、Javaの中の小さなプログラムを書き始めます.フィボナッチの数列などを印刷します.でも、私たちはgradleのために基礎を作っています.脚本言語はgroovyよりいいです.はい、学習の過程で、groovyのあるところとpythonのようなところも発見されました.groovyを勉強した後、他のものは前倒しに相当すると思います.うん、いいです
これからGroovyの難点とポイントを勉強します.gradleで一番多く使うのはそれです!!
Groovy APIの別のドキュメント:Grovy JDK API Dcumenation
学習コードはgithubにあります.