Java字符串基础

Java字符串常用的基础知识

//String是系统类! 所以建文件名字需要注意 !!!   

理论就不说了,直接上代码直观了解~~~~嘿嘿嘿~~

1.字符串的创建

        
    	 //方式1.直接赋值
    	 String str1 = "hello world";
    	 //方式2.通过字符型数组创建字符串
    	 char[] data = {'y', 'h', 'l'};
    	 String str2 = new String(data);
    	 //方式3.通过字符数组的一部分创建字符串
    	 char[] charArray = {'l', 'o', 'v', 'e'};
    	 String str3 = new String(charArray, 2 , 1);
    	 //参数2:是从哪个字符开始  参数3:是截取几个(长度)
    	 System.out.println(str3);
    	 //方法4.通过字符创建另一个字符串
    	 String str4 = new String(str1);//注意经常用于可变转不可变字符串
    	 System.out.println(str4);
    	 

2.字符串的比较


    	 //方式1: == 比较的是字符串的地址
    	 String str5 = "haha"; //常量区
    	 String str6 = new String("haha"); //堆区
    	 System.out.println(str5 == str6);
    	 String str7 = "haha";
    	 System.out.println(str5 == str7);
    	 //方式2: equals 只比较值
    	 System.out.println(str5.equals(str6));
    	 System.out.println(str5.equals(str7));
    	 //方式3:equalsIgnoreCase 忽略大小写
    	 str6 = "HaHa";
    	 System.out.println(str5.equalsIgnoreCase(str6));
    	 

3.判断字符串的前缀和后缀


    	 //endWith : 判断字符串以.....结尾
    	 String str8 = "变形金刚.avi";
    	 System.out.println(str8.endsWith(".avi"));
    	 //startWith:判断字符串以....开头
    	 String str9 = "沙雕凯";
    	 System.out.println(str9.startsWith("沙"));
    	 
    	 //compareTo: 字符串比较,是逐个字符进行比较,返回ASCII值
    	 str8 = "ABC";
    	 str9 = "AAc";
    	 System.out.println(str8.compareTo(str9));
    	// compareToIgnoreCase忽略大小写
    	 System.out.println(str8.compareToIgnoreCase(str9));
    	 

4.求字符串的长度length


    	 String str10 = "you are beautiful";
    	 System.out.println(str10.length());
    	 str10 = "好好学习吧!";
    	 System.out.println(str10.length());
    			 

5.判断字符串是否为空


    	 String str11 = null;
    	 String str12 = "";
    	 //禁止null调用任何对象的方法
    	 if(str11 != null && str11.length() != 0) {
    		 System.out.println(str11 + "不是空字符串");
    	 }else {
    		 System.out.println(str11 + "是空字符串");
    	 }
    	 //判断是否为空 如果为空则为true
    	 System.out.println(str12.isEmpty());
    	 //另一种方式 判断空串
    	 if(str12 != null && !str12.isEmpty()) {
    		 System.out.println("不是空字符串");   		 
    	 }else {
    		 System.out.println("是空字符串");
    	 }

6.字符串转换


    	 String str13 = "lucky dog";
    	 //大写
    	 System.out.println(str13.toUpperCase());
    	 System.out.println(str13); //原字符串没有变换
    	 //小写toLowerCase()
    	 str13 = "Lucky Dog";
    	 String lowerStr = str13.toLowerCase();
    	 System.out.println(lowerStr);
    	 System.out.println(str13);
    	 //字符串转数组
    	 char[] charArr = str13.toCharArray();
    	 for (int i = 0; i < charArr.length; i++) {
			System.out.println(charArr[i]);
		}
    	 //转其他类型
    	 int a = 5566;
    	 //方式1:拼接空字符串
    	 String s1 = a + "";
    	 System.out.println(s1);
    	 //方式2:String.valueOf(数据)
    	 String s2 = String.valueOf(a);
    	 //valueOf(此处基本类型皆可转换)
    	 //字符串转其他类型
    	 String s3 = "2020500";
    	 //方式1:其他数据类型.valueOf(字符串) 即可转换
    	 int b = Integer.valueOf(s3);
    	 double c = Double.valueOf(s3);
    	 float d = Float.valueOf(s3);
    	 //方式2:其他类型.parse其他类型(字符串)
    	 long e = Long.parseLong(s3);
    	 String s4 = "true";
    	 boolean f = Boolean.parseBoolean(s4);
    	 /*
    	  * int float long 等属于基本数据类型(参照C语言)
    	  * Integer Double Float Boolean 他们是Java中包装的类型
    	  *  是为了封装一些方法而定义的类!
    	  */

7.字符串的拼接


    	 String s5 = "you see see you ";
    	 String s6 = "one day day";
    	 //方式1: concat
    	 String s7 = s5.concat(s6);
    	 System.out.println(s7);

8.字符串的查找

         String s8 = "大学生活好啊,好吗?你说好就好!";
    	 //方式1:indexOf() 正向查找,返回第一次出现的位置,找不到就返回-1
    	 System.out.println(s8.indexOf("?"));
    	 System.out.println(s8.lastIndexOf("好")); //最后一次出现的位置
    	 System.out.println(s8.indexOf("好", 5));
    	 //方法2:contains 是否包含 boolean类型返回值
    	 System.out.println(s8.contains("哈哈哈"));

9.获取字符串的一部分

         String str = "好好学习,天天向上";
    	 //方式1:chatAt() 通过下标 获取某个字符
    	 System.out.println(str.charAt(3));
    	 //方法2:substring()
    	 System.out.println(str.substring(1));
    	 System.out.println(str.substring(3, 7));

10.替换字符串

         String s9 = "好好学习Java,天天想我";
    	 
    	 //方式1:replace() 就是把字符串中所有匹配到的字符串进行替换
    	 System.out.println(s9.replace("学习", "睡觉"));
    	 //方法2:replaceFirst() 只替换一个
    	 System.out.println(s9.replaceFirst("Java", "python"));
    	 

11.分割字符串 就是按照某个字符 将字符串切成数组

         //\\转义字符
    	 String s10 = "www|1304A|com";
    	 String[] strArray = s10.split("\\|");
    	 for (int i = 0; i < strArray.length; i++) {
			System.out.println(strArray[i]);
		}
    	 s10 = "www.993bt|com";
    	 // split("|") 单竖杠 是或者! 所以才需要添加\\转义
    	 strArray = s10.split("\\.|\\|");
    	 for (int i = 0; i < strArray.length; i++) {
			System.out.println(strArray[i]);
		}

12.去除收尾空格trim

         String s11 = " 哈哈";
    	 System.out.println(s11);
    	 System.out.println(s11.trim());

举个栗子:

例1. 输出“财色兼收”的第一个和最后一个字(这个栗子比较简单)

         //我没有写main函数,若要运行出结果必须加上main函数

         String s12 = "财色兼收";
    	 System.out.println(s12.charAt(0));
    	 System.out.println(s12.charAt(3));
    	 

例2.给出一串英语句子,把句子中的每个单词的首字母大写

        String s = "i want to fuck you";
 		String[] sArray = s.split(" ");
 		String newStr = "";
 		for(int i = 0; i < sArray.length; i++) {
 			String firstChar = String.valueOf(sArray[i].charAt(0));
// 			System.out.println(firstChar);
 			String upperStr = firstChar.toUpperCase();
 			System.out.println(upperStr);
 			//替换
 			String firstUppercase = sArray[i].replace(firstChar, upperStr);
 			newStr = newStr + firstUppercase + " ";
 		}
 		System.out.println(newStr);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值