Javaの大海原をじゃばじゃばと

勉強メモとか雑記です

勉強メモ@プロJava/その3

項番10.2.6 p.203練習問題なり

package projava;

import java.util.List;
import java.util.Locale;
import java.util.stream.Collectors;

public class StreamExercise2 {
    public static void main(String[] args) {

        var strs = List.of("apple","banana","orange","pineapple");

        System.out.println("--①6文字以上のものを大文字にして表示");
        var upStrs = strs.stream().filter(s -> s.length() >= 6).map(s -> s.toUpperCase()).toList();
        upStrs.stream().forEach(s -> System.out.println(s));

        System.out.println("--②6文字以上のものの文字数を合計");
        var cntLetters =  upStrs.stream().collect(Collectors.joining()).length();
        System.out.println("6文字以上のものの文字数を合計すると:" + cntLetters + "文字");

        System.out.println("--③全ての文字列がaを含んでいるか判定");
        String msg = "";
        if (strs.stream().allMatch(s -> s.contains("a"))) {
            msg += "いる";
        }else{
            msg += "いない";
        }
        System.out.println("全ての文字列がaを含んで" + msg);

        System.out.println("--④cを含むものが一つでもあるかどうか判定");
        if(strs.stream().anyMatch(s -> s.contains("c"))){
            System.out.println("cを含むものが少なくとも一つはある");
        }else{
            System.out.println("cを含むものは一つもない");
        }
    }
}

▼コンソール

ひとまずOKなのかしら。今日はここまで!