package hello;
/*
* 在Eclipse中生成可执行jar文件,只需要通过
* File->Export->选择Runable jar file然后一步一步导出即可
* 对于控制台程序,直接双击执行是看不到执行结果的
* cmd打开控制台,然后执行java -jar jarfilepath
* 就可以看到控制台的执行结果了
* */
public class World {
public static void main(String[] args) {
System.out.println("Hello java");
// String的基本操作
String str = "Hello world";
int worIndex = str.indexOf("wor");
System.out.println(String.format("worIndex is %1d", worIndex));
String world = str.substring(worIndex);
System.out.println(world);
// 包括startIndex,但是不包括endIndex
String wor = str.substring(worIndex, worIndex + 3);
System.out.println(wor);
String plus = "Hello " + "world";
System.out.println(plus);
// 大写转换
String upperCase = plus.toUpperCase();
System.out.println(upperCase);
// 使用concat
String a = "A";
a = a.concat("bc");
System.out.println(a);
// char
for (int i = 0; i < a.length(); i++) {
System.out.print(a.charAt(i));
}
for (char c : a.toCharArray()) {
System.out.print(c);
}
System.out.println();
// split
String toSplit = "Hello James Bond";
String[] words = toSplit.split(" ");
for (String word : words) {
System.out.println(word);
}
// compare
String str1 = "abc";
String str2 = "def";
int compareResult = str1.compareTo(str2);
System.out.println(compareResult);
// startsWith,endsWith
boolean isStartsWitha = str1.startsWith("a");
System.out.println(isStartsWitha);
System.out.println(isStartsWitha);
// StringBuffer考虑了线程同步,而StringBuilder没有考虑
// StringBuffer性能稍微差与StringBuilder在单线程情况下要使用StringBuilder
StringBuffer sb = new StringBuffer();
sb.append("Hello");
sb.append(" ");
sb.append("World");
String strValue = sb.toString();
System.out.println(strValue);
StringBuilder sbr = new StringBuilder();
sbr.append("Hello ");
sbr.append("Java");
System.out.println(sbr.toString());
// 数字格式化处理
studyFormatInteger();
// 格式浮点数
studyFormatFloat();
// 格式化中如果需要输入%,需要用两个来做转义
String formated = String.format("今日涨跌%1$.2f%%", 3.145);
System.out.println(formated);
}
static void studyFormatFloat() {
// 浮点数格式化
// %[index$][标识][最少宽度][.精度]转换方式
// 和整数的格式化基本相同,精度和转换方式不同
String[] formats = {
// - 在最小宽度内左对齐,不可以与“用0填充”同时使用,保留两位小数
"%1$-6.2f",
// +标识表示总是有一个符号,不省略+
"%1$+6.3f",
// 标识表示正数前加空格,负数前加-号
"%1$ 6.3f",
// 科学计数法表示数字
"%1$ 6.3e",
// g或者G表示根据实际情况自动选择科学计数法还是普通方式
// 这个从输出结果看忽略了最少宽度为6和保留3位小数.3的设置
"%1$ 6.3g", "%1$g",
// 'a', 'A' -- 结果被格式化为带有效位数和指数的十六进制浮点数
"%1$a" };
for (String format : formats) {
float num = 3.14159f;
String formated = String.format(format, num);
System.out.println(formated);
}
}
static void studyFormatInteger() {
// 字符串的格式化
// java的字符串格式化更像c的printf,而不像c#的string.Format
// 下面的博客很全面
// http://blog.csdn.net/andycpp/article/details/1749700
// 整形数字的格式化
// 对整数进行格式化:%[index$][标识][最小宽度]转换方式
// index下标从1开始
String strFormatInteger = String.format("%1$+5d;%2$ 5d", 99, 888);
System.out.println(strFormatInteger);
String[] formats = { "%1$-9d", "%1$#5X", "%1$+9d", "%1$09d", "%1$,9d",
"%1$(9d" };
// java中没有foreach关键字,但可以用for (type varname : iterable)实现foreach
for (String format : formats) {
int num = -9999999;
String formated = String.format(format, num);
// System.out.println(formated);
String output = String.format(
"String.format(\"%1$s\",%2$d) == \"%3$s\"", format, num,
formated);
System.out.println(output);
}
}
}
分享到:
相关推荐
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
一一击破Java入门可能会遇到的难点和疑惑 抽丝剥茧,层层推进,让知识环环相扣,降低了学习的难度 通过大量的比喻、类比、对比和图示等多种讲解方式,学习效果好 对Java语言的每个语法都提供了一个或多个例程讲解 ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...
Java SE编程入门教程 java入门以及变量debug(共63页).pptx Java SE编程入门教程 java设计模式(共17页).pptx Java SE编程入门教程 java数组(共33页).pptx Java SE编程入门教程 java网络编程(共29页).pptx ...