1、ストリームの作成
@ 1、parallelStream(平行)、収集ストリーム直列(シリアル)で設定することができる リストの<string>一覧= 新しい新規のArrayList <ストリング> (); ストリームの<string> STREAM1 = list.stream(); // 2、によってアレイは、静的方式を作成するストリーム 社員[] =従業員の新たな新しい従業[ 10 ]; ストリーム <従業員> STREAM2 = Arrays.stream(従業員); // 3、静的メソッドストリームの作成によって ストリームの<string> stream3 =ストリーム.of(" AA "、" BB "、" CC "、" DD " )。 //4、迭代 ストリーム<整数>反復= Stream.iterate(10、(x) - > X + 2 )。 iterate.limit(10).forEach(システム。アウト::のprintln)。 // 5、生成 Stream.generate(() - > Math.random())限界(10).forEach(システム。アウト ::のprintln)。
2、エンティティクラスを作成します
パッケージcom.zh.stream。 輸入java.util.Date; パブリック クラス従業員{ プライベート整数歳。 プライベート文字列名; プライベート ダブル給与; プライベートステータスのステータス。 公共の整数getAge(){ 戻り値の年齢。 } 公共 ボイドsetAge(整数年齢){ この .age = 年齢。 } パブリック文字列のgetName(){ 戻り名。 } 公共 ボイドのsetName(文字列名){ この.nameの= 名前; } 公共 ダブルgetSalary(){ 戻り給料。 } 公共 ボイド setSalary(ダブル給料){ この .salary = 給与。 } パブリックステータスのgetStatus(){ リターン・ステータス、 } 公共 ボイドのsetStatus(ステータス状態){ この .status = ステータス。 } 公共の従業員(){ } 公共の従業員(整数年齢){ この .age = 年齢。 } 公共の従業員(整数年齢、文字列名){ この .age = 年齢; この .nameの= 名前; } 公共の従業員(整数年齢、文字列名、ダブル給料){ この .age = 年齢。 この .nameの= 名前; この .salary = 給与; } 公共の従業員(整数ID、日付CREATETIME、日付updateTime、整数年齢、文字列名、ダブル給料、 ステータス状態){ この .age = 年齢。 この .nameの=名前; この .salary = 給与; この .status = ステータス。 } 公共の従業員(整数年齢、文字列名、ダブル給料、ステータス状態){ この .age = 年齢。 この .nameの= 名前; この .salary = 給与; この .status = ステータス。 } @Override パブリック文字列のtoString(){ 戻り "従業員[年齢=" +年齢+ "NAME =" +名+ "給与=" +給与+ "ステータス=" +ステータス+ "]" 。 公共 int型のハッシュコード(){ 最終 int型の素数= 31 。 int型の結果= 1 ; 結果 =プライム*結果+((年齢== nullの)0?:age.hashCode()); 結果 =プライム*結果+((名前== nullの)0?:name.hashCode()); 長い一時; TEMP = Double.doubleToLongBits(給与); 結果 =プライム*結果+(INT)(温度は^(TEMP >>> 32 ))。 戻り値の結果; } @Override 公衆 ブール等しい(オブジェクトobj){ 場合(この == OBJ) を返す 真。 もし(OBJ == nullの) リターン はfalse ; もし(!はgetClass()= obj.getClass()) のリターン はfalse ; 従業員他 = (従業員)OBJ。 もし(年齢== nullの){ 場合(!other.age = nullの) リターン はfalse ; } 他 もし(!age.equals(other.age)) のリターン はfalse ; もし(名前== nullの){ 場合(!other.name = nullの) リターン はfalse ; } それ以外の 場合(!name.equals(other.name)) のリターン はfalse ; もし(Double.doubleToLongBits(給与)=!Double.doubleToLongBits(other.salary)) のリターン はfalse ; 返す 真; } パブリック 列挙型ステータス{ FREE、BUSY、召命 } }