java基础之Eclipse及常用API(Object类,String类)

来源:互联网 发布:亨利领 t恤 知乎 编辑:程序博客网 时间:2024/06/06 20:53

------- android培训、java培训、期待与您交流! ----------

1.Eclipse工作空间的基本配置

A:程序的编译和运行的环境配置(一般不改)
window-- Preferences -- Java
编译环境:Compiler 默认选中的就是最高版本。
运行环境:Installed JREs 默认会找你安装的那个JDK。建议配置了Java的环境变量。
低编译,高运行。可以。
高编译,低运行。不可以。
建议,编译和运行的版本一致。

窗体给弄乱了,怎么办?
window-- Reset Perspective
控制台找不到了,怎么办?
Window--ShowView—Console
取消悬浮提示
window-- Preferences -- Java--Editor--Hovers。右边将Combined Hover勾去掉。
这样代码的悬浮框就不会自动出现了。如果想看提示,将光标悬浮在代码上,按F2即可。
Eclipse中内容辅助键的使用
A:Alt+/ 起提示作用
B:main+alt+/,syso+alt+/,给出其他提示
C:补充输出语句,选中需要输出的部分,alt+/选择最后一项即可
D:定义自己的alt + /
*windows--perference-Java-Editor-Templates--New
Eclipse中快捷键的使用
A:新建 ctrl + n
B:格式化 ctrl+shift+f
C:导入包 ctrl+shift+o
D:注释 ctrl+/,ctrl+shift+/,ctrl+shift+\
E:代码上下移动选中代码alt+上/下箭头
F:查看源码 选中类名(F3或者Ctrl+鼠标点击)
G:给建议 ctrl+1,根据右边生成左边的数据类型,生成方法
H:查找具体的类 ctrl + shift + t
I:查找具体类的具体方法 ctrl + o
J:删除代码 ctrl + d
K:抽取方法alt + shift + m
L:改名alt + shift + r
Eclipse中如何提高开发效率
alt + shift + s
A:自动生成构造方法
B:自动生成get/set方法
package IOEncodeBufferedTest;

public class Teacher implements Comparable<Teacher>{
private String name;
private int age;
public Teacher() {
super();
}
public Teacher(String name, int age) {
super();
this.name = name;
this.age = age;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}
public int compareTo(Teacher o) {
int result = o.age - this.age;
return result;
}
}

2.Object类的toString()方法

publicString toString()
a:返回该对象的字符串表示。
publicStirng toString() {
returnname + "," + age;
}
b:它的值等于:
getClass().getName()+ '@' + Integer.toHexString(hashCode())
c:由于默认情况下的数据对我们来说没有意义,一般建议重写该方法。
B:最终版: 自动生成

3.==号和equals方法的区别

==是一个比较运算符号,既可以比较基本数据类型,也可以比较引用数据类型,基本数据类型比较的是值,引用数据类型比较的是地址值
equals方法是一个方法,只能比较引用数据类型,所有的对象都会继承Object类中的方法,如果没有重写Object类中的equals方法,equals方法和==号比较引用数据类型无区别,重写后的equals方法比较的是对象中的属性
public class Demo2_String {
public static void main(String[] args) {
//demo1(); 
//demo2();
//demo3();
//demo4(); 
String s1 = "ab";
String s2 = "abc";
String s3 = s1 + "c";
System.out.println(s3 == s2);
System.out.println(s3.equals(s2)); 
}

public static void demo4() {
String s1 = "a" + "b" + "c"; //java的常量优化机制,在编译的时候会直接生成abc字符串
String s2 = "abc";
System.out.println(s1 == s2); 
System.out.println(s1.equals(s2));
}

public static void demo3() {
String s1 = new String("abc"); //s1记录的堆内存对象的地址值 
String s2 = "abc"; //s2记录的常量池对象的地址值
System.out.println(s1 == s2); 
System.out.println(s1.equals(s2));
}

public static void demo2() {
//这句话在内存中创建了几个对象
String s1 = new String("abc"); //写一句是创建两个,在常量池一个,在堆内存一个,堆内存的是常量的副本
String s2 = new String("abc"); //再写一句是创建一个,常量池的不用再创建了,直接拷贝一个副本给堆内存就可以了
}

public static void demo1() {
String s1 = "abc"; //"abc"在常量池中,如果没有就创建,如果有就直接使用
String s2 = "abc"; //两个引用指向同一个对象
System.out.println(s1 == s2); 
System.out.println(s1.equals(s2));
}

}

4. String类

常见构造方法
publicString():空构造
publicString(byte[] bytes):把字节数组转成字符串
publicString(byte[] bytes,int index,int length):把字节数组的一部分转成字符串
publicString(char[] value):把字符数组转成字符串
publicString(char[] value,int index,int count):把字符数组的一部分转成字符串
publicString(String original):把字符串常量值转成字符串
String类的判断功能
booleanequals(Object obj):比较字符串的内容是否相同,区分大小写
booleanequalsIgnoreCase(String str):比较字符串的内容是否相同,忽略大小写
booleancontains(String str):判断大字符串中是否包含小字符串
booleanstartsWith(String str):判断字符串是否以某个指定的字符串开头
booleanendsWith(String str):判断字符串是否以某个指定的字符串结尾
booleanisEmpty():判断字符串是否为空。
String类的获取功能
intlength():获取字符串的长度。
charcharAt(int index):获取指定索引位置的字符
intindexOf(int ch):返回指定字符在此字符串中第一次出现处的索引。
intindexOf(String str):返回指定字符串在此字符串中第一次出现处的索引。
intindexOf(int ch,int fromIndex):返回指定字符在此字符串中从指定位置后第一次出现处的索引。
intindexOf(String str,int fromIndex):返回指定字符串在此字符串中从指定位置后第一次出现处的索引。
lastIndexOf
Stringsubstring(int start):从指定位置开始截取字符串,默认到末尾。
Stringsubstring(int start,int end):从指定位置开始到指定位置结束截取字符串。
String类的转换功能
byte[]getBytes():把字符串转换为字节数组。
char[]toCharArray():把字符串转换为字符数组。
staticString valueOf(char[] chs):把字符数组转成字符串。
staticString valueOf(int i):把int类型的数据转成字符串。
StringtoLowerCase():把字符串转成小写。
StringtoUpperCase():把字符串转成大写。
Stringconcat(String str):把字符串拼接。
注意:String类的valueOf方法可以把任意类型的数据转成字符串。
public class Demo3_Method1 {

/**
* boolean equals(Object obj):比较字符串的内容是否相同,区分大小写
* boolean equalsIgnoreCase(String str):比较字符串的内容是否相同,忽略大小写
* boolean contains(String str):判断大字符串中是否包含小字符串
* boolean startsWith(String str):判断字符串是否以某个指定的字符串开头
* boolean endsWith(String str):判断字符串是否以某个指定的字符串结尾
* boolean isEmpty():判断字符串是否为空。
* null和""的区别
* null是一个空常量,不代表字符串对象,不能调用字符串中的方法,如果调用会报空指针异常,null可以给所有的引用数据类型赋值
* ""是一个字符串常量,代表字符串对象,可以调用字符串中的所有的方法,""只能给字符串赋值
*/
public static void main(String[] args) {
//demo1();
//demo2();
//demo3();
String s1 = null; //s1赋值为null其实就是s1中没有记录任何String对象的地址值
String s2 = "";

//System.out.println(s1.isEmpty());
System.out.println(s2.isEmpty());
}

public static void demo3() {
String s1 = "aaaitcastbbb";
String s2 = "aaa";
String s3 = "bbb";

System.out.println(s1.startsWith(s2));
System.out.println(s1.startsWith(s3));

System.out.println("-------------------------------");
System.out.println(s1.endsWith(s2));
System.out.println(s1.endsWith(s3));
}

public static void demo2() {
String s1 = "aaaitcastbbb";
String s2 = "itcast";
String s3 = "ccc";
System.out.println(s1.contains(s2));
System.out.println(s1.contains(s3));
}

public static void demo1() {
String s1 = "abc";
String s2 = "abc";
String s3 = "AbC";
String s4 = "CBA";

System.out.println(s1.equals(s2)); //比较字符串的内容是否相同,区分大小写
System.out.println(s2.equals(s3));

System.out.println("---------------");
System.out.println(s2.equalsIgnoreCase(s3));//比较字符串的内容是否相同,忽略大小写
System.out.println(s1.equalsIgnoreCase(s2));
System.out.println(s3.equalsIgnoreCase(s4));
}

}










0 0
原创粉丝点击