JavaSE(cy),javasecy
JavaSE(cy),javasecy
java高级Api
什么是JDK Api
.jvm:(javaVritual Machices):java虚拟机:
将.java文件源文件经过jvm进行编译变成.class(字节码文件)文件.
.jre:(java runtime environment)java程序运行所需要的最小
环境
.jdk:(java development kit)java开发工具包.开发一个java
所需要的最小环境为JDK.
JDK中包含大量的Api类库,所谓Api(Application Programming Interface)
应用程序接口,换句话说就是一些已经写好,可供直接调用的功能.
(在java语言中这些功能以类的形式封装)
.jdk Api包含的类库功能强大,经常使用的有:
字符串操作,集合操作,文件操作,输入输出操作,网络操作,多线程等.
java.util.* 常用工具类,如集合,随机数生成器,日历,时钟等.
java.io.* 文件操作,输入/输出操作
java.net.* 网络操作
java.math.* 数学运算相关
java.security.* 安全相关操作
java.sql.* 数据库访问
java.text.* 处理文字,日期,数字,信息的格式.
文档怎么注释:
单行://
多行:/**/
文档注释:/** */
JSP中html代码注释:<!-- -->
JSP中包含java代码的注释:<%-- --%>
CSS文件只能以上/**/
文档注释:/** */
目的:对自己的程序生成规范说明文档,用于交接.
.以/**开始,以*/结束.
.加在类和方法的开头,为了说明作者,时间,版本,要实现功能的详细描述等信息.
.通过javadoc工具,可以轻松的将此注释转换HTML说明文档,学习者和
程序员主要通过文档了解API的功能.
.文档注释不同于普通的注释(//....或/*....*/),普通注释写在程序
之中,用于程序员进行代码维护和交流,无法通过工具生成文档,专门用于生成
API使用者进行参考的文档资料.
小结:
关于版本,作者等信息,写在类的前面.
关于方法的详细功能,写在每个方法的上面.
如何使用eclipse生成说明文档
首先Project --->点击Generate Javadco进入下一页面
选择你要生成的Javadoc的包,或包下的类以及生成Javadoc所存在的了路径,
默认生成当前工程目录下.
点击finish即可生成javadoc.
点击生成的index.html,查看具体内容.
package com.sicheng.javaBase01;
/**
* <strong>javadocTest</strong>
*
* 类功能说明
*
* @author chenyue
*
* @version 1.0
*
* @see 参见
*
* @since 始于JDK版本
*
*/
public class JavaDocTest {
/**
* 获取打招呼的字符串 描述方法的主要功能
* @param name 该参数指定向谁打招呼
* @return 返回打招呼的字符串
*/
public String hello(String name) {
return name+"你好";
}
}
字符串操作.
String 是不可变对象
.StringBuilder或者StringBuffer
StringBuilder中存放的是String对象吗?
.java.lang.String.使用final修饰,不能被继承.
.字符串底层封装了字符串数组及针对字符数组的操作算法.
.字符串一旦创建,对象永远无法改变,但字符串引用可以重新赋值.
String a = "123";
String b = "123";
String c = new String("123");
1.虚拟机内存中开辟出一个小空间
2.这个空间会有一个唯一的二进制名字
3.当前这个小空间中存储了123所对应的Unicode编码
4.变量名a指向当前这个空间的二进制名字(地址).
a = "1234";
失去引用等待GC回收.
.java字符串在内存中采用Uncoide编码方式,任何一个字符
对应两个字节的定长编码.
String常量池
.Java为了提高性能,静态字符串(字面量/常量/常量连接的结果)在
常量池中创建,并尽量使用同一个对象,重用静态字符串.
.对于重复出现的字符串直接量(String b = "1234";)JVM会首先
在常量池中查找,如果存在即返回该对象.
String a = "123";
a = "1234";
String b = "12"+"34";
String c = "1234";
//System.out.println(a.length());
System.out.println(b.equals(c));//true
System.out.println(".................");
System.out.println(b==c);
String d = new String("1234");
System.out.println(".................");
System.out.println(d==c);//false
//String重写了equals
使用new关键字会创建新的String对象,使用new方式创建的字符串对象,
不会缓存在String常量池中.
使用indexOf实现检索
.indexOf方法用于实现在字符串中检索另外一个字符串
.String提供了几个重载的indexOf方法
int indexOf(String str):在字符串中检索str,返回其第一次出现的位置,如果找不到
则返回-1.
int indexOf(String str,fromIndex):从字符串的fromIndex位置开始检索.
String还定义了lastIndexOf方法:
int lastIndexOf(String str):
str在字符串中多次出现时,将返回最后一次出现的位置.
使用subString获取子串.
.subString方法用于返回一个字符串的子字符串.
subString常用重载方法如下:
String substring(int beginIndex,int endIndex);
返回字符串中从下标beginIndex开始到endIndex(不包括)结束的子字符串.
String substring(int beginIndex):返回字符串中从下标beginIndex(包括)
开始到字符串结尾的子字符串.
trim
去掉一个字符串的前导和后继的空字符串.
charAt(int index):用于返回字符串指定位置的字符,参数index表示指定的位置.
可以用来做遍历.
startsWith和endsWith
检测一个字符串是否以指定的字符串开头或结尾.
String str = "think in java";
System.out.println(str.endsWith("java"));//true
大小写转换
toUpperCase();
toLowerCase();
valueOf:
将其他类型转换为字符串类型.
其他数据类型:基本数据类型,自定义引用数据类型,char[]数组.
如果是其他类型的数组则输出地址.
double pi = 3.14;
boolean flag = true;
String str = String.valueOf(pi);
System.out.println(str);
String str1 = String.valueOf(flag);
System.out.println(str1);
char[] charArr = {'A','B','C','D'};
int[] a = new int[10];
String str2 = String.valueOf(charArr);
System.out.println(str2);
String str3 = String.valueOf(a);
System.out.println(str3);
Cell cell1 = new Cell("ZHANGSAN",20);
StringBuilder封装可变字符串.
StringBuilder封装可变的字符串,对象创建后可以通过调用其方法改变封装的字符序列?
StringBuilder有带参和无参构造函数
public StringBuilder();
public StringBuilder(String str);
StringBuilder的常用方法
追加字符串:append(String str);
插入字符串:insert(int dst,String s);
删除字符串:delete(int sta,int end);
替换字符串:replace(int start,int end,String str);
字符串反转:StringBuilder reverse();
@Test
public void testStringBuilder() {
//如何创建StringBuilder对象
StringBuilder buf = new StringBuilder("Programming language");
buf.append(" java").append(" php").append(" c#");
System.out.println(String.valueOf(buf));
}
相关文章
- 暂无相关文章
用户点评