Java常用包以及String类,函数的调用
Java中的常用包
1) java.applet:包含一些用于创建Java小应用程序的类。
2) java.awt:包含一些用于编写与平台无关的图形界面(GUI)应用程序的类。
3) java.io:包含一些用作输入输出(I/O)处理的类。
4) java.lang:包含一些Java语言的基本类与核心类,如String、Math、Integer、System和Runtime,提供常用的功能,这个包中的所有类是被隐式导入的。
5) java.net:包含用于建立网络连接的类,与java.io同时使用完成与网络有关的读写。
6) java.util:包含一些实用工具类和数据结构类。
String和StringBuffer
1)String str=“abc”;
int i=3;
float f=4.5f;
char ch='a';
boolean b=true;
System.out.println(str + i + f + ch + b);
2)针对String的“+”和“+=”,是Java中唯一被重载的操作符;在Java中,不允许程序员重载操作符。
3)String类对象是一个常量对象。
String str=“abc”;
str=“def”;
4) 在处理大量字符串的程序中,通常用StringBuffer来替代String。
5) 打印StringBuffer对象时,总是先调用toString()函数。而对于自定义的类,如Student类,初始化对象st,其有两个属性,String name 和int age。此时如果用System.out.println(st),其也总是先调用toString函数,故可以在Student类中重写toString函数,令其打印出name和age。
在Java中,boolean、byte、short、int、long、char、float、double这八种是基本数据类型,其余的都是引用类型。
“==”是比较两个变量的值是否相等,“equals”是比较两个对象变量所代表的对象的内容是否相等。
故对于 String str1=new String("abc");String str2=new String("abc");要测试str1和str2是否相等,则必须用if(str1.equals(str2))。
函数的调用
1) 在Java中,传参时,都是以传值的方式进行。
2) 对于基本数据类型,传递的是数据的拷贝;对于引用类型,传递的引用的拷贝。
以下代码即传递的是数据的拷贝,故打印出来,x仍然为3,y仍然为4.
class StringTest
{
public static void change(int x,int y)//不引入第三个变量,实现x与y的互换
{
x=x+y;
y=x-y;
x=x-y;
}
public static void main(String[] args)
{
int x=3;
int y=4;
change(x,y);
System.out.println("x="+x);
System.out.println("y="+y);
}
}
以下代码传递的是引用的拷贝。故打印为:x=4,y=3,实现了互换。
class StringTest
{
public static void change(Point pt)
{
pt.x=pt.x+pt.y;
pt.y=pt.x-pt.y;
pt.x=pt.x-pt.y;
}
public static void main(String[] args)
{
Point pt=new Point();
pt.x=3;
pt.y=4;
change(pt);
System.out.println("x="+pt.x);
System.out.println("y="+pt.y);
}
}
class Point{int x, y;}