how2j.cn

本视频是解读性视频,所以希望您已经看过了本知识点的内容,并且编写了相应的代码之后,带着疑问来观看,这样收获才多。 不建议一开始就观看视频



6分23秒
本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器



关键字 简介 示例代码
charAt
获取字符
示例代码
toCharArray
获取对应的字符数组
示例代码
subString
截取子字符串
示例代码
split
分隔
示例代码
trim
去掉首尾空格
示例代码
toLowerCase
toUpperCase
大小写
示例代码
indexOf
lastIndexOf
contains
定位
示例代码
replaceAll
replaceFirst
替换
示例代码
练习-每个单词的首字母都转换为大写
示例代码
答案-每个单词的首字母都转换为大写
示例代码
练习-英文绕口令
示例代码
答案-英文绕口令
示例代码
练习-间隔大写小写模式
示例代码
答案-间隔大写小写模式
示例代码
练习-最后一个字母变大写
示例代码
答案-最后一个字母变大写
示例代码
练习-把最后一个two单词首字母大写
示例代码
答案-把最后一个two单词首字母大写
示例代码
示例 1 : 获取字符   
示例 2 : 获取对应的字符数组   
示例 3 : 截取子字符串   
示例 4 : 分隔   
示例 5 : 去掉首尾空格   
示例 6 : 大小写   
示例 7 : 定位   
示例 8 : 替换   
示例 9 : 练习-每个单词的首字母都转换为大写   
示例 10 : 答案-每个单词的首字母都转换为大写   
示例 11 : 练习-英文绕口令   
示例 12 : 答案-英文绕口令   
示例 13 : 练习-间隔大写小写模式   
示例 14 : 答案-间隔大写小写模式   
示例 15 : 练习-最后一个字母变大写   
示例 16 : 答案-最后一个字母变大写   
示例 17 : 练习-把最后一个two单词首字母大写   
示例 18 : 答案-把最后一个two单词首字母大写   

charAt(int index)获取指定位置的字符
package character; public class TestString { public static void main(String[] args) { String sentence = "盖伦,在进行了连续8次击杀后,获得了 超神 的称号"; char c = sentence.charAt(0); System.out.println(c); } }
package character;
   
public class TestString {
   
    public static void main(String[] args) {
  
    	String sentence = "盖伦,在进行了连续8次击杀后,获得了 超神 的称号";
    	
    	char c = sentence.charAt(0);
    	
    	System.out.println(c);
          
    }
}
示例 2 :

获取对应的字符数组

edit
toCharArray()
获取对应的字符数组
package character; public class TestString { public static void main(String[] args) { String sentence = "盖伦,在进行了连续8次击杀后,获得了超神 的称号"; char[] cs = sentence.toCharArray(); //获取对应的字符数组 System.out.println(sentence.length() == cs.length); } }
package character;
   
public class TestString {
   
    public static void main(String[] args) {
  
    	String sentence = "盖伦,在进行了连续8次击杀后,获得了超神 的称号";

    	char[] cs = sentence.toCharArray(); //获取对应的字符数组
    	
    	System.out.println(sentence.length() == cs.length);
    	
    }
}
示例 3 :

截取子字符串

edit
subString
截取子字符串
package character; public class TestString { public static void main(String[] args) { String sentence = "盖伦,在进行了连续8次击杀后,获得了 超神 的称号"; //截取从第3个开始的字符串 (基0) String subString1 = sentence.substring(3); System.out.println(subString1); //截取从第3个开始的字符串 (基0) //到5-1的位置的字符串 //左闭右开 String subString2 = sentence.substring(3,5); System.out.println(subString2); } }
split
根据分隔符进行分隔
package character; public class TestString { public static void main(String[] args) { String sentence = "盖伦,在进行了连续8次击杀后,获得了 超神 的称号"; //根据,进行分割,得到3个子字符串 String subSentences[] = sentence.split(","); for (String sub : subSentences) { System.out.println(sub); } } }
package character;
   
public class TestString {
   
    public static void main(String[] args) {
  
    	String sentence = "盖伦,在进行了连续8次击杀后,获得了 超神 的称号";
    	
    	//根据,进行分割,得到3个子字符串
    	String subSentences[] = sentence.split(",");
    	for (String sub : subSentences) {
			System.out.println(sub);
		}
          
    }
}
示例 5 :

去掉首尾空格

edit
trim
去掉首尾空格
package character; public class TestString { public static void main(String[] args) { String sentence = " 盖伦,在进行了连续8次击杀后,获得了 超神 的称号 "; System.out.println(sentence); //去掉首尾空格 System.out.println(sentence.trim()); } }
package character;
   
public class TestString {
   
    public static void main(String[] args) {
  
    	String sentence = "        盖伦,在进行了连续8次击杀后,获得了 超神 的称号      ";
    	
    	System.out.println(sentence);
    	//去掉首尾空格
    	System.out.println(sentence.trim());
    }
}
toLowerCase 全部变成小写
toUpperCase 全部变成大写
package character; public class TestString { public static void main(String[] args) { String sentence = "Garen"; //全部变成小写 System.out.println(sentence.toLowerCase()); //全部变成大写 System.out.println(sentence.toUpperCase()); } }
package character;
   
public class TestString {
   
    public static void main(String[] args) {
  
    	String sentence = "Garen";
    	
    	//全部变成小写
    	System.out.println(sentence.toLowerCase());
    	//全部变成大写
    	System.out.println(sentence.toUpperCase());
    	
    }
}
indexOf 判断字符或者子字符串出现的位置
contains 是否包含子字符串
package character; public class TestString { public static void main(String[] args) { String sentence = "盖伦,在进行了连续8次击杀后,获得了超神 的称号"; System.out.println(sentence.indexOf('8')); //字符第一次出现的位置 System.out.println(sentence.indexOf("超神")); //字符串第一次出现的位置 System.out.println(sentence.lastIndexOf("了")); //字符串最后出现的位置 System.out.println(sentence.indexOf(',',5)); //从位置5开始,出现的第一次,的位置 System.out.println(sentence.contains("击杀")); //是否包含字符串"击杀" } }
package character;
    
public class TestString {
    
    public static void main(String[] args) {
   
        String sentence = "盖伦,在进行了连续8次击杀后,获得了超神 的称号";
 
        System.out.println(sentence.indexOf('8')); //字符第一次出现的位置
         
        System.out.println(sentence.indexOf("超神")); //字符串第一次出现的位置
         
        System.out.println(sentence.lastIndexOf("了")); //字符串最后出现的位置
         
        System.out.println(sentence.indexOf(',',5)); //从位置5开始,出现的第一次,的位置
         
        System.out.println(sentence.contains("击杀")); //是否包含字符串"击杀"
         
    }
}
replaceAll 替换所有的
replaceFirst 只替换第一个
package character; public class TestString { public static void main(String[] args) { String sentence = "盖伦,在进行了连续8次击杀后,获得了超神 的称号"; String temp = sentence.replaceAll("击杀", "被击杀"); //替换所有的 temp = temp.replaceAll("超神", "超鬼"); System.out.println(temp); temp = sentence.replaceFirst(",","");//只替换第一个 System.out.println(temp); } }
package character;
   
public class TestString {
   
    public static void main(String[] args) {
  
    	String sentence = "盖伦,在进行了连续8次击杀后,获得了超神 的称号";

    	String temp = sentence.replaceAll("击杀", "被击杀"); //替换所有的
    	
    	temp = temp.replaceAll("超神", "超鬼");
    	
    	System.out.println(temp);
    	
    	temp = sentence.replaceFirst(",","");//只替换第一个
    	
    	System.out.println(temp);
    	
    }
}
示例 9 :

练习-每个单词的首字母都转换为大写

edit  姿势不对,事倍功半! 点击查看做练习的正确姿势
给出一句英文句子: "let there be light"
得到一个新的字符串,每个单词的首字母都转换为大写
练习-每个单词的首字母都转换为大写
示例 10 :

答案-每个单词的首字母都转换为大写

edit
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
查看本答案会花费2个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
查看本答案会花费2个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
账号未激活 账号未激活,功能受限。 请点击激活
本视频是解读性视频,所以希望您已经看过了本答案的内容,带着疑问来观看,这样收获才多。 不建议一开始就观看视频

1分31秒 本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器


package character; public class TestString { public static void main(String[] args) { // 给出一句英文句子: "let there be light" // 得到一个新的字符串,每个单词的首字母都转换为大写 String s = "let there be light"; System.out.println(s); String[] words = s.split(" "); for (int i = 0; i < words.length; i++) { String word = words[i]; char upperCaseFirstWord =Character.toUpperCase(word.charAt(0)); String rest = word.substring(1); String capitalizedWord = upperCaseFirstWord + rest; words[i] = capitalizedWord; } String result = ""; for (String word : words) { result+= word + " "; } result= result.trim(); System.out.println(result); } }
示例 11 :

练习-英文绕口令

edit  姿势不对,事倍功半! 点击查看做练习的正确姿势
英文绕口令
peter piper picked a peck of pickled peppers
统计这段绕口令有多少个以p开头的单词
示例 12 :

答案-英文绕口令

edit
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
查看本答案会花费2个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
查看本答案会花费2个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
账号未激活 账号未激活,功能受限。 请点击激活
本视频是解读性视频,所以希望您已经看过了本答案的内容,带着疑问来观看,这样收获才多。 不建议一开始就观看视频

1分49秒 本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器


答案-英文绕口令
package character; public class TestString { public static void main(String[] args) { // peter piper picked a peck of pickled peppers // 统计这段绕口令有多少个以p开头的单词 String s = "peter piper picked a peck of pickled peppers"; System.out.println(s); String[] words = s.split(" "); int count= 0; for (int i = 0; i < words.length; i++) { String word = words[i]; char firstWord =word.charAt(0); if(firstWord=='p') count++; } System.out.printf("总共有%d个p开头的单词",count); } }
示例 13 :

练习-间隔大写小写模式

edit  姿势不对,事倍功半! 点击查看做练习的正确姿势
把 lengendary 改成间隔大写小写模式,即 LeNgEnDaRy
练习-间隔大写小写模式
示例 14 :

答案-间隔大写小写模式

edit
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
查看本答案会花费4个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
查看本答案会花费4个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
账号未激活 账号未激活,功能受限。 请点击激活
本视频是解读性视频,所以希望您已经看过了本答案的内容,带着疑问来观看,这样收获才多。 不建议一开始就观看视频

1分30秒 本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器


package character; public class TestString { public static void main(String[] args) { // 把 lengendary 改成间隔大写小写模式,即 LeNgEnDaRy String s = "lengendary"; char[] cs =s.toCharArray(); int count= 0; for (int i = 0; i < cs.length; i++) { if(0==i%2) cs[i] = Character.toUpperCase(cs[i]); } String result = new String(cs); System.out.printf(result); } }
package character;

public class TestString {
     
    public static void main(String[] args) {
//    	把 lengendary 改成间隔大写小写模式,即 LeNgEnDaRy  
    	String s = "lengendary";
    	char[] cs =s.toCharArray();
    	int count= 0;
    	for (int i = 0; i < cs.length; i++) {
			if(0==i%2)
				cs[i] = Character.toUpperCase(cs[i]);
		}
    	String result = new String(cs);
    	System.out.printf(result);

    }
}
示例 15 :

练习-最后一个字母变大写

edit  姿势不对,事倍功半! 点击查看做练习的正确姿势
把 lengendary 最后一个字母变大写
示例 16 :

答案-最后一个字母变大写

edit
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
查看本答案会花费3个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
查看本答案会花费3个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
账号未激活 账号未激活,功能受限。 请点击激活
本视频是解读性视频,所以希望您已经看过了本答案的内容,带着疑问来观看,这样收获才多。 不建议一开始就观看视频

56秒 本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器


答案-最后一个字母变大写
package character; public class TestString { public static void main(String[] args) { // 把 lengendary 最后一个字母变大写 String s = "lengendary"; char[] cs = s.toCharArray(); cs[cs.length - 1] = Character.toUpperCase(cs[cs.length-1]); String result = new String(cs); System.out.printf(result); } }
package character;

public class TestString {

	public static void main(String[] args) {
		// 把 lengendary 最后一个字母变大写
		String s = "lengendary";
		char[] cs = s.toCharArray();
		cs[cs.length - 1] = Character.toUpperCase(cs[cs.length-1]);
		String result = new String(cs);
		System.out.printf(result);

	}
}
示例 17 :

练习-把最后一个two单词首字母大写

edit  姿势不对,事倍功半! 点击查看做练习的正确姿势
Nature has given us that two ears, two eyes, and but one tongue, to the end that we should hear and see more than we speak
把最后一个two单词首字母大写
示例 18 :

答案-把最后一个two单词首字母大写

edit
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
查看本答案会花费4个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
查看本答案会花费4个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
账号未激活 账号未激活,功能受限。 请点击激活
本视频是解读性视频,所以希望您已经看过了本答案的内容,带着疑问来观看,这样收获才多。 不建议一开始就观看视频

1分43秒 本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器


答案-把最后一个two单词首字母大写
package character; public class TestString { public static void main(String[] args) { // 把最后一个two单词首字母大写 String s = "Nature has given us that two ears, two eyes, and but one tongue, to the end that we should hear and see more than we speak"; int index = s.lastIndexOf(" two "); char[] cs = s.toCharArray(); cs[index +1] = Character.toUpperCase(cs[index+1]); String result = new String(cs); System.out.printf(result); } }
package character;

public class TestString {

	public static void main(String[] args) {
		// 把最后一个two单词首字母大写 
		String s = "Nature has given us that two ears, two eyes, and but one tongue, to the end that we should hear and see more than we speak";
		int index = s.lastIndexOf(" two ");
		
		char[] cs = s.toCharArray();
		cs[index +1] = Character.toUpperCase(cs[index+1]);
		String result = new String(cs);
		System.out.printf(result);

	}
}


HOW2J公众号,关注后实时获知最新的教程和优惠活动,谢谢。


问答区域    
2023-04-14 间隔大写小写模式
054941LZL_lp




//练习-3 //间隔大写小写模式
        //练习-3
        //间隔大写小写模式
        //把 lengendary 改成间隔大写小写模式,即 LeNgEnDaRy
        String str3 = "lengendary";
        String arr3[] = str3.split("");
        for (int i = 0; i < arr3.length; i++) {
            if (i%2 == 0){
                arr3[i] = arr3[i].toUpperCase();
            }
        }
        str3 = String.join("", arr3);
        System.out.printf("str3: %s%n", str3);

							


5 个答案

wind_lz
答案时间:2024-02-09
最后的two

后山人
答案时间:2023-10-07
xxiaoxiao
答案时间:2023-09-07
Let There Be Light

ACele
答案时间:2023-05-23
首字母大小写,极简的写法 StringBuffer.append 追加字符串

龚炎
答案时间:2023-05-07
不同的方法:常规遍历字符串,设置flag来大写; 或者分割再组合



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2022-10-23 不一样的答案
zmzc




练习题答案
package how2j._1_Java基础._8_数字与字符串;

import java.util.Arrays;
public class _7_Manipulating_a_string {
    public static void main(String[] args){

        //练习-1
        //每个单词的首字母都转换为大写
        //给出一句英文句子: "let there be light"
        //得到一个新的字符串,每个单词的首字母都转换为大写
        String str = "let there be light";
        String []arr = str.split(" ");
        for(int i=0;i<arr.length;i++){
            arr[i]=arr[i].replace(arr[i].charAt(0),arr[i].toUpperCase().charAt(0));
        }
        System.out.println(Arrays.toString(arr));


        //练习-2
        //英文绕口令
        //peter piper picked a peck of pickled peppers
        //统计这段绕口令有多少个以p开头的单词
        String str2 = "peter piper picked a peck of pickled peppers";
        String []arr2 = str2.split(" ");
        int count=0;
        for(String i : arr2){
            if(String.valueOf(i.charAt(0)).equals("p")){
                count+=1;
            }
        }
        System.out.println(count);

        //练习-3
        //间隔大写小写模式
        //把 lengendary 改成间隔大写小写模式,即 LeNgEnDaRy
        String str3 = "lengendary";
        String []arr3 = str3.split("");
        String str4="";
        for(int i=0;i<arr3.length;i++){
            if(i%2==0){//下标从0开始
                str4+=arr3[i].toUpperCase().charAt(0);
            }else{
                str4+=arr3[i];
            }
        }
        System.out.println(str4);

        //练习-4
        //最后一个字母变大写
        //把  最后一个字母变大写
        String str5 ="lengendary";
        str5=str5.replace(str5.charAt(str5.length()-1),str5.toUpperCase().charAt(str5.length()-1));
        System.out.println(str5);

        //练习-5
        //把最后一个two单词首字母大写
        //Nature has given us that two ears, two eyes,
        // and but one tongue, to the end that we should hear and see more than we speak
        //把最后一个two单词首字母大写
        String str6="Nature has given us that two ears,two eyes, two and two but one tongue, to the end that we should hear and see more than we speak";
        String str7=reverse(str6);
        str7=str7.replaceFirst("two","Two");
        String str8=reverse(str7);
        System.out.println(str8);
    }
    public static String reverse(String str){
        String str2="";
        String []arr = str.split(" ");
        for (int i= arr.length-1;i>=0;i--){
            str2+=arr[i]+" ";
        }
        return str2;
    }
}

							


4 个答案

alleyf
答案时间:2023-10-09
xxiaoxiao
答案时间:2023-09-07
6

054941LZL_lp
答案时间:2023-04-14
不知reverse这个方法作用是什么,最后这一题用如下代码看着也是一样的
//把最后一个two单词首字母大写
        String str6="Nature has given us that two ears, two eyes, two and two but one tongue, to the end that we should hear and see more than we speak";
        String str7 =str6.replaceFirst("two","Two");
        System.out.println(str7);

鲨鱼呢
答案时间:2022-12-05



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2022-05-26 提供一个思路,char字符减去32相当于把字符串大写
2022-05-19 参考答案
2022-05-10 答案


提问太多,页面渲染太慢,为了加快渲染速度,本页最多只显示几条提问。还有 144 条以前的提问,请 点击查看

提问之前请登陆
提问已经提交成功,正在审核。 请于 我的提问 处查看提问记录,谢谢
关于 JAVA 基础-数字与字符串-操纵字符串 的提问

尽量提供截图代码异常信息,有助于分析和解决问题。 也可进本站QQ群交流: 578362961
提问尽量提供完整的代码,环境描述,越是有利于问题的重现,您的问题越能更快得到解答。
对教程中代码有疑问,请提供是哪个步骤,哪一行有疑问,这样便于快速定位问题,提高问题得到解答的速度
在已经存在的几千个提问里,有相当大的比例,是因为使用了和站长不同版本的开发环境导致的,比如 jdk, eclpise, idea, mysql,tomcat 等等软件的版本不一致。
请使用和站长一样的版本,可以节约自己大量的学习时间。 站长把教学中用的软件版本整理了,都统一放在了这里, 方便大家下载: https://how2j.cn/k/helloworld/helloworld-version/1718.html

上传截图