基础整理03 String 和基本数据包装类的讲解

String 和基本数据包装类的讲解

一、基本数据类型对象包装类

基本数据类型 引用数据类型

byte Byte

shortShort

int Integer

long Long

boolean Boolean

float Float

double Double

char Character 

1)基本数据类型对象包装类的最常见作用。就是用于基本数据类型和字符串类型之间做转换

1、基本数据类型转成字符串。

-->基本数据类型+""

-->基本数据类型.toString(基本数据类型值);

如:Integer.toString(34);//将整数34转成字符串"34"

2、字符串转成基本数据类型。

-->基本数据类型

xxx a = Xxx.parseXxx(String);

int a = Integer.parseInt(str);

double b = Double.parseDouble("12.33");

boolean b = Boolean.parseBoolean("true");

Integer i = new Integer("2123");

int num = i.intValue();

2) 十进制转成其它进制

1、toBinaryString()

2、toHexString()

3、toOctalStirng();

3) 其它进制转十进制:parseInt()

package study.part1.day010.threadtx;
public class BaseDateObject {
	public static void main(String[] args) {
		//整数类型的最大值
		sc("int max:"+Integer.MAX_VALUE);
		sc("int min:"+Integer.MIN_VALUE);
		int num = Integer.parseInt("123215");
		System.out.println(num);
		long l = Long.parseLong("34");
		System.out.println(Integer.toBinaryString(6));
		System.out.println(Integer.toHexString(67));
		/**
		 * 其它进制转十进制
		 */
		int i = Integer.parseInt("3c",16);
		System.out.println("3c转成十进制是:"+i);
	}
	public static void sc(String str){
		System.out.println(str);
	}	
}<span style="font-family: Arial, Helvetica, sans-serif;"> </span>

二、String 的讲解

String 类适用于描述字符串。

常见的操作有哪些?

1、获取

1.1字符串中包含的字符数,也就是字符串的长度

int length():获取长度

1.2 根据位置获取某个字符串。

char charAt(int index)

1.3 根据字符获取该字符在字符串中的位置。

int indexOf(int ch):返回的是ch在字符串中第一次出现的位置

int indexOf(int ch,int fromIndex):从fromIndex指定位置开始,获取ch在字符串中出现的位置。

2、判断

2.1 获取字符串中是否包含某一个子串。

boolean contains(str):

特殊之处:indexOf(str):可以索引str 第一次出现的位置,如果返回-1表示 str 不在字符串中。所以,也可以用于对指定字符串的判断是否包含。

2.2 字符中是否有内容。

boolean isEmpty():原理就是判断长度是否为0;

2.3 字符串是否以指定内容开头。

boolean startWith(str):

2.4 字符串是否以指定内容结尾。

boolean endWith(str)

2.5 判断字符串内容是否相等。复写了 Object 类中的 equals 方法。

boolean equals(str)

2.6 判断内容是否相同,并忽略大小写。忽略大小写的比较。

boolean equalsIgnoreCase(str)

3、转换

3.1 将字符数组转成字符串。

构造函数:String(char[])

    String(char[],offset,count)

3.2 将字符串转成字符数组。

char[] toCharArray()

3.3 将字节数组转成字符串。(了解)

3.4 将字符串转成字节数组。

byte[] getBytes()

4、替换

4.1 String replace(oldchar,newchar)

5、切割

5.1 split();

6、转换,去除空格,比较。

6.1 将字符串转换成大写或者小写

toUpperCase();  toLowerCase()

6.2 去除空格

trim()

6.3 对两个字符串进行自然顺序的比较。

int compareTo(String)

7、Demo:

package study.base.day010.ThreadTX;
public class StringDemo1 {
	public static void main(String[] args) {
		//String s1 = "abx";	//s1是一个类类型变量,“abx” 是一个对象。
		//字符串最大的特点就是:一旦被初始化,就不可以被改变。
		StringMethod01();
		StringMethod03();
		StringMethod02("asdfasdfdsaf");
		String ss = "aaa";
		System.out.println(ss.isEmpty());
		StringMethod04();
		StringMethod05();
		StringMethod06();
		StringMethod07();
		StringMethod08();
		StringMethod09();
		StringMethod11("asdasdfasdfasdfasdf","df");
	}
	public static void StringMethod01(){
		System.out.println("StringMethod01");
		String s1 = "abc";
		String s2 = new String("abc");
		String s3 = "abc";
		System.out.println(s1==s2);
		System.out.println(s1==s3);
	}
	public static void StringMethod02(String str){
		System.out.println("StringMethod02");
		//获取长度
		System.out.println(str.length());
		//根据索引获取字符串
		System.out.println(str.charAt(4));
		//根据字符获取索引
		System.out.println(str.indexOf('f',6));
		System.out.println(str.lastIndexOf('a'));
	}
	public static void StringMethod03(){
		String str = "javaArrayDemo.java";
		System.out.println("StringMethod03");
		//判断文件名称是否是 java 开头
		System.out.println(str.startsWith("java"));
		//判断文件名称是否是 .java 结束
		System.out.println(str.endsWith(".java"));
		//判断文件中是否包含 Array
		System.out.println(str.contains("Array"));
	}
	/**
	 * 字符串转字符数组的demo
	 */
	public static void StringMethod04(){
		String s1 = "assdkkgjjssf";
		char[] chas = s1.toCharArray();
		for (int i = 0; i < chas.length; i++) {
			System.out.println("第"+(i+1)+"个字符串数组的值是:"+chas[i]);
		}
	}
	/**
	 * 替换demo
	 */
	public static void StringMethod05(){
		String s = "hello.java";
		String s1 = s.replace('e', 'a');
		System.out.println("替换之前:"+s);
		System.out.println("替换结果:"+s1);
	}
	/**
	 * 切割demo
	 * 把String转换成字符串数组
	 */
	public static void StringMethod06(){
		String s = "sad,fas,df,sd";
		String[] s2 = s.split(",");
		for (int i = 0; i < s2.length; i++) {
			System.out.println("切割\n\t数组的值是:"+s2[i]);
		}
	}
	/**
	 * substring demo
	 */
	public static void StringMethod07(){
			String s = "asdfasdfsadf";
			String s2 = s.substring(5);
			String s3 = s.substring(3, 9);
			System.out.println(s2+"--subString--"+s3);
	}
	/**
	 * compareTo(String)
	 */
	public static void StringMethod08(){
		String s = "asdfasdfwwsdfer";
		String s2 = "asdasdf";
		
		System.out.println("method8:"+s2.compareTo(s));
	}
	/**
	 * trim()
	 */
	public static void StringMethod09(){
		String s = " asdf asdf ";
		String s2 = s.trim();
		System.out.println("me09:"+s2+s2.length());
	}
	/**
	 * 将字符串反转
	 * 将字符串变成数组,再反转,再变成字符串
	 */
	public static void StringMethod10(){
		String s = "adfsadfsdf";
		char[] s2 = s.toCharArray();
		//反转
		String s4 = new String(s2);
		System.out.println(s4);
	}
	/**
	 * 获取一个字符串在另一个字符串中出现的次数
	 */
	public static void StringMethod11(String str,String key){
		int count = 0;
		int index = 0;
		while((index = str.indexOf(key))!=-1){
			str = str.substring(index+key.length());
			count++;
		}
		System.out.println("xxx:"+count);
	}
	/**
	 * 获取一个字符串在另一个字符串中的最大相同数
	 */
	public static void getMaxSubstring(String s1,String s2){
		String max = "",min="";
		max = (s1.length()>s2.length())?s1:s2;
		min = (max==s1)?s2:s1;
		for(int x= 0;x<s2.length();x++){
			for(int y=0,z=s2.length()-x;z!=s2.length()+1;y++,z++){
				String temp = s2.substring(y,z);
				if(s1.contains(temp)){
					System.out.println("gxx:"+temp);
				}
			}
		}
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值