Javaで、出席番号、名前、性別、得点を入力して、Personクラスのデータa1とa1から女を削除したa2を表示するサンプルコードを作りました。
Selectクラスのmale_onlyメッソドで、a1から女を削除するコードを教えて下さい。
import.java.util.List;
import java.util.ArrayList;
import java.util.Collections;
class Person{
int number; //出席番号
String name; //名前
String sex; //性別
int score //得点
//コンストラクターは省略
//getter,setterは省略
public String toString(){
return Integer.toString(number) + ":"
+ name + ":" + sex + ":" +Integer.toString(score)
}
}
class Main {
public static void main(String[] args) {
List<Person> a1 = new ArrayList<Person>();
a1.add.( new Person(1,"高橋","男,"75));
a1.add.( new Person(2,"田中","女",82));
a1.add.( new Person(3,"小林","男",62));
System.out.println(a1);
//a1のクローンa2を作る
//male_onlyメソッドを呼び出す
Select choice = new Select();
choice.male_only(a2,"男",a1.size());
System.out.println(a2);
}
}
class Select{
public void(メッソドの型)? male_only(Person pr,String sex,int max (引数は?)){
while( ){
if(sex != "男"){
_.remove();
}
/**メッソドの方向性を書きましたが、ここに、クローンしたa2の参照で、"男"以外を削除させるメッソドの書き方を教えてほしいです。またメッソドの型と引数、戻り値も教えてほしいです。**/
}
return(戻り値は?) ;
}
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
一覧から特定の値を削除するならば、
一覧から特定の値のみ抜き出すメソッドである filter で代用できます。
http://download.java.net/java/jdk9/docs/api/java …
Java のストリーム機能を使っているので、以下のメソッドも併用しましょう。
http://download.java.net/java/jdk9/docs/api/java …
例: 一覧.stream().filter( 特定の値であるか判断するラムダ式 )
終端処理もお忘れなく
例: 一覧.stream().filter( 特定の値であるか判断するラムダ式 ).forEach( 値を出力するラムダ式 );
例: 一覧.stream().filter( 特定の値であるか判断するラムダ式 ).collect(Collectors.toList());
Ogre7077様
回答ありがとうございます。ストリームから使う方法は、残念ながら私には、わかりませんでした。あと、Java9にも対応していないので、そこもこの方法では無理だと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- Java java final 1 2022/06/10 22:49
- Java Java プログラム public class Main { public static void 3 2023/08/10 23:46
- Ruby 【JAVA】数字をひし形に出力するプログラムについて 2 2022/07/11 23:32
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
- Java 直し方について教えて頂きたいです。 4 2022/08/13 02:11
- Java Java 配列<選挙> 4 2023/07/31 15:07
- C言語・C++・C# C++プログラミングコードにポリモーフィズムを取り入れ方を教えてください。 2 2023/06/09 11:17
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
中カッコ{}だけの記述について
-
プログラミングの問題です。大...
-
System.exit()の値を取得したい
-
Java 最大公約数 gcd
-
Javaの問題集の解答が意味不明です
-
オーバーロードで
-
変数を動的に利用するには?
-
javaで特定の文字列から特定の...
-
うるう年判定
-
Javaでデータベースの内容をGUI...
-
(大至急)JavaでATMもどきを作成
-
インタフェイス実装と抽象クラ...
-
StringクラスのcompareToメソッド
-
クラスの作成 オブジェクトの...
-
コマンドライン引数の*(アフ...
-
【初心者です】javaで平均値を...
-
Javaでlog4jを使ってログ出力を...
-
(長文です。すみません。)rep...
-
元旦からの経過日数を求めたい
-
replaceAllが使えない場合の取...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラミングの問題です。大...
-
変数を動的に利用するには?
-
中カッコ{}だけの記述について
-
Java プログラム public class ...
-
System.exit()の値を取得したい
-
Javaでlog4jを使ってログ出力を...
-
javaのプログラミングで作るRPG...
-
Socketの接続のタイムアウトを...
-
NoSuchMethodErrorが解決できま...
-
JSP/Servletのパラメータの受け...
-
コンストラクタの引数の中のnew?
-
バッチファイルごしのシステム...
-
Javaで日本語の出力が文字化けする
-
javaのudp通信について
-
日本語が文字コードによっては...
-
(大至急)JavaでATMもどきを作成
-
【java】同ディレクトリ別ファ...
-
javaで特定の文字列から特定の...
-
(1)を表示するには
-
Processing :指定フォルダ内の...
おすすめ情報