day10 eclipse jar文件 doc输出 String类 StringBuffer以及StringBuilder

ecplise的基本操作和快捷键和debug操作,遇到需要的方法就是进入  step into

定义模板和format的时候不要把注释去掉


GUI简述和匿名内部类

桌面程序:GUI(图形化界面)

awt:不能跨平台

swing:可以跨平台

Java Fx:Java最新推出的技术,

java的doc和jar文件

doc

package _02_GUI;

/**
 *  @author	Xiaoyi
 *  @since	v0.1
 *  @see
 *  
 *  
 *  
 */
public interface Walkable {
	/**
	 * 表示行走的功能
	 */
	void walk();
}
package _02_GUI;

/**
 *  @author	will
 *  @since	v0.1
 *  @see
 *  
 *  
 *  
 */
public class Tiger implements Walkable {

	@Override
	public void walk() {
		System.out.println("我可以行走了");
	}
	
	/**
	 * 
	 * @param num1  第一个加数
	 * @param num2  第二个加数
	 * @return
	 */
	public int getSum(int num1,int num2){
		return num1+num2;
	}

}
jar
表示多分的字节码文件的压缩包

1,普通的jar:不是用来做运行的,而是字节码的合体,为了复用性 (jar文件放入lib  然后Build path)

2,可运行jar  java -jar jar文件名

安装eclipse的插件

OpenExplorer

1:放入plugins文件夹

2:放入dropins文件夹

3:dropins中新建eclipse再新建plugins,然后存放这个插件文件

4:link方式     在dropins目录中创建快捷方式.link 内容是 path=d:/ttt/插件文件夹   文件夹下面是是eclipse/plugins/插件文件  绝对路径

路径中必须使用/或者\\,不能使用\

字符串

字符串就是一串字符,查看源码得知本质是char数组

字符串的分类:

1:不可变字符串: String 

2:可变字符串:StringBuffer/StringBuilder

String类字符串

不可变的字符串,一个String对象只能表示一个固定的字符串,若内容改变,则对象也改变.

String对象的创建:

直接赋值字面值String str = "123";

使用构造器创建String str2 = new String("123");

String对象的空值

""和null的区别  

String相关面试题

String str1 = "ABC";
String str2 = new String("ABC");
上面两行代码分别创建了几个对象

第一行代码创建了0个或者1个String对象

第二行代码创建了1个或者2个对象

   String str1 = "ABCD";
   String str2 = "A" +"B"+"C"+"D"; // 编译器优化之后,该代码等价于 str1.
   String str3 = "AB"+"CD";
   String c = "CD"; String str4 = "AB" + c;
   String str5 = "AB" + getXX();  //(备注:getXX方法返回"CD");

String对象比较:

ü1):单独使用""引号创建的字符串都是直接量,编译期就已经确定存储到常量池中;

ü2):使用newString("")创建的对象会存储到堆内存中,是运行期才创建;

ü3):使用只包含直接量的字符串连接符如"aa" +"bb"创建的也是直接量编译期就能确定,已经确定存储到常量池中;

ü4):使用包含String直接量(无final修饰符)的字符串表达式(如"aa" +s1)创建的对象是运行期才创建的,存储在堆中;

-----------------------------

比较字符串:  ==:只能比较内存地址,若要比较内容:equals.

String的常用方法

package _03_String;

public class StringDemo {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		String str = "abcdefghja";
		System.out.println(str.charAt(0));
		System.out.println("----------------------------------------");
		//是否以a为开始的
		str.startsWith("a");
		//是否是以j为结尾的
		str.endsWith("j");
		//比较字符串
		str.equals("abcdefghj");
		//比较字符串,忽略大小写
		str.equalsIgnoreCase("Abcdefghj");
		//判断是否为空
		str.isEmpty();
		//返回a在此字符串第一次出现的位置
		str.indexOf("a");
		//返回a在此字符串最后一次出现的位置
		str.lastIndexOf("c");
		//字符串长度
		str.length();
		//替换
		String str2 = str.replace("a","b");
		System.out.println(str2);
		//replaceAll
		String str21 = str.replaceAll("cde", "1");
		System.out.println(str21);
		//分割
		String str3 = "a,b,c,d,e,f";
		String[] strarr = str.split(",");
		String str5="";
		for (int i = 0; i < strarr.length; i++) {
			System.out.println(strarr[i]+str5);
		}
		System.out.println(str5);
		//截取
		System.out.println("abcdhfg".substring(2));
		
		//大小写转换
		"AB".toLowerCase();
		"ac".toUpperCase();
		//trim
		System.out.println("        ".trim());
		
		
	}

}
String工具类

public class StringUtil {
	private StringUtil(){}
	//字符串即不为null也不为""  是的话返回false
	public static boolean hasLength(String str){
		return str!=null && !"".equals(str.trim());
	}
	//判断字符串为空 为空返回true
	public static boolean isBlank(String str){
		return !hasLength(str);
	}

}
StringBuffer以及StringBuilder

StringBuffer     :线程安全性较高,但是性能低

StringBuilder   :线程安全性低,但是性能较高  推荐    

多线程使用StringBuffer,单线程使用StringBuilder

append();

StringBuilder和StringBuilder有初始化个数,也可以指定



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值