JEP Draft für "Raw String Literals" in Java
In der Diskussion ist der „Back-Tick“, sodass es so aussehen würde:
File Paths Example
Traditional String LiteralsRaw String Literals```
Runtime.getRuntime().exec("\"C:\\Program Files\\foo\" bar");
Runtime.getRuntime().exec("C:\Program Files\foo" bar");
### Multi-line Example
Traditional String LiteralsRaw String Literals```
String html = "\n"
" \n" +
" Hello World.\n" +
" \n" +
"\n";
String html = `
Hello World.
`;
Regular Expression Example
Traditional String LiteralsRaw String Literals```
System.out.println("this".matches("\\w\\w\\w\\w"));
System.out.println("this".matches(\w\w\w\w));
Output:
true
### Polyglot Example
Traditional String LiteralsRaw String Literals```
String script = "function hello() {\n" +
" print(\'\"Hello World\"\');\n" +
"}\n" +
"\n" +
"hello();\n";
ScriptEngine engine = new ScriptEngineManager().getEngineByName("js");
Object obj = engine.eval(script);
String script = `function hello() {
print('"Hello World"');
}
hello();
`
ScriptEngine engine = new ScriptEngineManager().getEngineByName("js"); Object obj = engine.eval(script);
Output:
"Hello World"
Database Example
Traditional String LiteralsRaw String Literals```
String query = "SELECT EMP_ID, LAST_NAME\n" +
"FROM EMPLOYEE_TBL\n" +
"WHERE CITY = 'INDIANAPOLIS'\n" +
"ORDER BY EMP_ID, LAST_NAME;\n";
String query = SELECT EMP_ID, LAST_NAME FROM EMPLOYEE_TB WHERE CITY = 'INDIANAPOLIS' ORDER BY EMP_ID, LAST_NAME; ;
Ich bin gespannt, ob das in Java 10 kommen wird. Ich dachte schon, dass Java 10 Release wird eher klein, doch zusammen mit den var-Variablen sind das zwei kleine, aber bedeutende Sprachänderungen.
Details unter .