[JAVA] J'ai créé StringUtils.isBlank

je l'ai fait

StringUtils.java


package practice;

import java.util.Arrays;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import java.util.function.Consumer;
import java.util.function.Predicate;
import java.util.stream.Collectors;

/**
 * Utils
 * 
 * @author me
 *
 */
public class Practice {

	/** String list */
	private static final List<String> INTEGER_LIST = Arrays.asList(null, "", " ", "0", "1", "2");

	/**
	 * main
	 * 
	 * @param args
	 */
	public static void main(String[] args) {
		try {
			run(INTEGER_LIST);
		} catch (NumberFormatException e) {
			echo.accept("・ Ω ・ v");
		}
	}

	/**
	 * run
	 * 
	 * @param list <E> The element type of this list.
	 * @throws NumberFormatException if conversion to numeric number is impossible.
	 */
	private static void run(List<String> list) throws NumberFormatException {
		echo.accept(list.stream().filter(notBlank).map(Integer::parseInt)
				.collect(Collectors.summingInt(Integer::intValue)));
	}

	/** not null */
	static Predicate<String> notNull = v -> Optional.ofNullable(v).isPresent();
	/** not space */
	static Predicate<String> notSpace = v -> !v.equals(" ");
	/** StringUtils.isBlank */
	static Predicate<String> notBlank = v -> notNull.test(v) && !v.isEmpty()
			&& Arrays.asList(v.split("")).stream().anyMatch(notSpace);
	/** out */
	static Consumer<Object> echo = v -> System.out.println(v);

}

résultat

3

Conclusion

Même si vous pouvez créer le vôtre, il est plus rapide d'ajouter la bibliothèque. Mais s'il se termine par quelques lignes, vous n'avez pas à l'utiliser une par une. J'ai l'impression de pouvoir tout résoudre car java existe déjà Je n'ai pas vu du tout apache.common.lang récemment ...

Recommended Posts

J'ai créé StringUtils.isBlank
J'ai fait une roulette à Java.
J'ai créé une application de chat.
J'ai créé une application shopify @java
J'ai créé une interface graphique avec Swing
J'ai fait une simple fonction de recommandation.
J'ai fait une annotation en Java.
J'ai fait Mugenkura Sushi Gacha
J'ai créé une application correspondante (application Android)
J'ai créé un outil de génération package.xml.
[Android] J'ai créé une application de podomètre.
[Ruby] J'ai créé un simple client Ping
J'ai fait diverses fonctions de la séquence de Fibonacci (Ruby)
J'ai créé un serveur écologique avec scala
J'ai fait une mort risquée avec Ruby
J'ai créé un plug-in pour IntelliJ IDEA
J'ai créé une application Janken avec kotlin
J'ai créé une application de calculatrice sur Android
J'ai créé un nouvel outil de déploiement Java
J'ai créé une application Janken avec Android
J'ai créé un outil Diff pour les fichiers Java
J'ai créé un programme de jugement des nombres premiers en Java
04. J'ai fait un frontal avec SpringBoot + Thymeleaf
J'ai fait de l'art de la mosaïque avec des images Pokemon
J'ai créé une application par moi-même! (Application de gestion de la lecture)
J'ai fait un blackjack avec Ruby (j'ai essayé d'utiliser minitest)
J'ai créé une application Android pour le service MiRm
J'ai créé un jeu Janken en Java (CLI)
J'ai créé une application de visualisation qui affiche le PDF
J'ai créé un conteneur Docker pour exécuter Maven
J'ai créé une bibliothèque d'extension Ruby en C
[Rails] J'ai créé une fonction de brouillon en utilisant enum
J'ai créé un client API pour Nature Remo
J'ai créé un robot LINE avec Rails + heroku
J'ai fait un portfolio avec Ruby On Rails