一、Java String类
String实际上与System类和Scanner类一样,都是Java库中一个预定义得类。String类型不是基本类型,而是引用类型(reference type)。任何Java类都可以将变量表示为引用类型。使用引用类型声明的变量称为引用变量,它引用一个对象。
创建字符串
String greeting = "ZRX";
在代码中遇到字符串常量时,这里的值是“ZRX”,编译器会使用该值创建一个String对象。和其它对象一样,可以使用关键字和构造方法来创建String对象。
String类有11种构造方法,这些方法提供不同的参数来初始化字符串,比如提供一个字符数组参数;
public class StringDemo{
public static void main(String args[]){
char[] helloArray = { 'r', 'u', 'n', 'o', 'o', 'b'};
String helloString = new String(helloArray);
System.out.println( helloString );
}
}
注意:String类是不可以改变的,所以一旦创建了String对象,那么它的值就无法改变了。
字符串长度
用于获取有关对象的信息的方法称为访问器方法。
String类的一个访问器方法是length()方法,它返回字符串对象包含的字符数。
public class StringDemo {
public static void main(String args[]) {
String site = "www.runoob.com";
int len = site.length();
System.out.println( "菜鸟教程网址长度 : " + len );
}
}
连接字符串
String类提供了连接两个字符串的方法:
string1.concat(string2);
返回string2连接string1的新字符串。也可以对字符串常量使用concat()方法,如:
"Hello,"+"runoob"+"!"
创建格式化字符串
我们知道输出格式化数字可以使用printf()和format()方法。
String类使用静态方法format()返回一个String对象而不是PrintStream对象。
String类的静态方法format()能用来创建可复用的格式化字符串,而不仅仅是用于一次打印输出。
System.out.printf("浮点型变量的值为 " +
"%f, 整型变量的值为 " +
" %d, 字符串变量的值为 " +
"is %s", floatVar, intVar, stringVar);
String方法
参考Java String API文档
二、StringBuffer和StringBuilder类
当对字符串进行修改的时候,需要使用StringBuffer和StringBulider类。
StringBuffer和StringBuilder类的对象能够被多次的修改,并且不产生新的未使用对象。StringBuilder类再Java 5中被提出,它和StringBuffer之间的最大不同在于StringBuilder的方法不是线程安全的(不能同步访问)。
由于StringBuildr相较于StringBuffer有速度优势,所以多数情况下建议使用StringBuilder类。
三、Java数组
声明数组变量
首先必须声明数组变量,才能在程序中使用数组。
dataType[] arraryRefVar; //首选的方法
或
dataType arrartRefVar[]; // 效果相同,但不是首选方法
创建数组
Java语言使用new操作符来创建数组,
arrayRefVar = new dataType[arraySize];
- 使用dataType[arraySize]创建一个数组
- 把新创建的数组的引用赋值给变量arrayRefVar
数组变量的声明和创建数组可以用一条语句完成,
dataType[] arrayRefVar = new dataType[arraySize];
另外,你还可以使用如下的方式创建数组
dataType[] arrayRefVar = {value0,value1,...,valuek};
foreach循环
能在不使用下标的情况下遍历数组
public class TestArray {
public static void main(String[] args) {
double[] myList = {1.9, 2.9, 3.4, 3.5};
// 打印所有数组元素
for (double element: myList) {
System.out.println(element);
}
}
}
数组可以作为函数的参数和返回值
Arrays类
功能:
- 给数组赋值,通过fill方法
- 给数组排序,通过sort方法,按升序
- 比较数组,通过equals方法比较数组中元素值是否相等
- 查找数组元素,通过binarySearch方法能对排序好的数组进行二分查找法操作
三、Java日期时间(1)
java.util包提供了Date类来封装当前的日期和时间。Date类提供两个构造函数来实例化Date对象。
第一个构造函数使用当前日期和时间来初始化对象。
Date()
第二个构造函数接收一个参数,该参数是从1970年1月1日起的毫秒数。
Date(long millisec)
获取当前日期时间
import java.util.Date;
public class DateDemo {
public static void main(String args[]) {
// 初始化 Date 对象
Date date = new Date();
// 使用 toString() 函数显示日期时间
System.out.println(date.toString());
}
}