Idiomatically determine all the characters that can be used for symbols: Difference between revisions

Line 17:
=={{header|Java}}==
{{works with|Java|8}}
<lang java>import java.util.streamfunction.IntStreamIntPredicate;
import java.util.stream.IntStream;
 
public class Test {
public static void main(String[] args) throws Exception {
System.out.print("Java Identifier start: ");, 0, 0x10FFFF, 72,
.filter(Character::isJavaIdentifierStart, "%c");
IntStream.rangeClosed(0, 0x10FFFF)
.filter(Character::isJavaIdentifierStart)
.limit(72)
.forEach(cp -> System.out.printf("%c", cp));
System.out.println("...");
 
System.out.print("Java Identifier part: ");, 0, 0x10FFFF, 25,
.filter(Character::isJavaIdentifierPart, "[%d]");
IntStream.rangeClosed(0, 0x10FFFF)
.filter(Character::isJavaIdentifierPart)
.limit(25)
.forEach(cp -> System.out.printf("[%d]", cp));
System.out.println("...");
 
System.out.print("Java Identifier ignorable: ");, 0, 0x10FFFF, 25,
.filter(Character::isIdentifierIgnorable, "[%d]");
IntStream.rangeClosed(0, 0x10FFFF)
.filter(Character::isIdentifierIgnorable)
.limit(25)
.forEach(cp -> System.out.printf("[%d]", cp));
System.out.println("...");
 
System.out.print("Unicode Identifier start: ");, 0, 0x10FFFF, 72,
.filter(Character::isUnicodeIdentifierStart, "%c");
IntStream.rangeClosed(0, 0x10FFFF)
.filter(Character::isUnicodeIdentifierStart)
.limit(72)
.forEach(cp -> System.out.printf("%c", cp));
System.out.println("...");
 
System.out.print("Unicode Identifier part : ");, 0, 0x10FFFF, 25,
.filter(Character::isUnicodeIdentifierPart, "[%d]");
IntStream.rangeClosed(0, 0x10FFFF)
}
.filter(Character::isUnicodeIdentifierPart)
 
.limit(25)
static void print(String msg, int start, int end, int limit,
.forEach(cp -> System.out.printf("[%d]", cp));
IntPredicate p, String fmt) {
 
System.out.printlnprint("..."msg);
IntStream.rangeClosed(0start, 0x10FFFFend)
.limitfilter(25p)
.limit(72limit)
.forEach(cp -> System.out.printf("%c"fmt, cp));
System.out.println("...");
}
Anonymous user