栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java探索之string字符串的应用代码示例

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java探索之string字符串的应用代码示例

String类中提供了丰富的用于操作字符串的方法。

int indexOf(String str)

该方法用于返回当给定字符串在当前字符串中的位置,若当前字符串不包含给定字符串则返回-1。

重载的方法

int indexOf(String str,int formIndex),从指定下标处(包含)查询子串,返回返回当给定字符串在当前字符串中的位置,若当前字符串不包含给定字符串则返回-1。

用自己的算法实现startsWith和endsWith功能。

package com.hz.practice;

public class Practice01 {
  public static void main(String[] args) {
    String str = "qwewrewr";
//   boolean temp = str.endsWith("r");
//   System.out.println(temp);
    
    char[] arr = str.toCharArray();
    char c = 'r';
    if(arr[0]==c){
      System.out.println("true");
    }else{
      System.out.println("false");
    }
    
    if(arr[arr.length-1]==c){
      System.out.println("true");
    }else{
      System.out.println("false");
    }
  }
}

输出结果:

false 
true

2.采用字符的移位方式实现字符文本加密解密。

package com.hz.practice;
import java.util.Scanner;

public class Practice02 {
  public static void main(String[] args) {
    System.out.println("请输入一个字符串");
    Scanner sc =new Scanner(System.in);
    String str1 = new String();
    str1=sc.nextLine();    
    System.out.println(str1.replaceAll("a", "1.")
 .replaceAll("b", "2.").replaceAll("c", "3.")
 .replaceAll("d", "4.").replaceAll("e", "5.")
 .replaceAll("f", "6.").replaceAll("g", "7.")
 .replaceAll("h", "8.").replaceAll("i", "9.")
 .replaceAll("j", "10.").replaceAll("k", "11.")
 .replaceAll("l", "12.").replaceAll("m", "13.")
 .replaceAll("n", "14.").replaceAll("o", "15.")
 .replaceAll("p", "16.").replaceAll("q", "17.")
 .replaceAll("r", "18.").replaceAll("s", "19.")
 .replaceAll("t", "20.").replaceAll("u", "21.")
 .replaceAll("v", "22.").replaceAll("w", "23.")
 .replaceAll("x", "24.").replaceAll("y", "25.")
 .replaceAll("z", "26."));
  }
}

输出结果:

请输入一个字符串 
asdsddffg 
1.19.4.19.4.4.6.6.7.

3.验证是随机生成4位验证码,由用户输入并否输入正确, 如果输入错误就生成新的验证码让用户重新输入,最多输入5次!

package com.hz.practice;
import java.util.Random;
import java.util.Scanner;

public class Practice03 {
  public static void main(String[] args) {
    String str="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
    char[]arr=new char[4];//定义一个长度是4的char型数组
    Random sj=new Random();
    System.out.println("验证码是:");
    for(int i=0;i<4;i++)
    {
      arr[i]=str.charAt(sj.nextInt(61));//从str中随机截取4个单个字符并赋值给arr这个数组存放
    }
    System.out.println(arr);
    Scanner sc=new Scanner(System.in);
    System.out.println("请输入验证码");
    String a=new String(arr);//把数组转换成字符串
    //定义输入次数
    for(int j=0;j<5;j++)
    {
      if(sc.nextLine().equals(a))
      {
 System.out.println("验证码输入正确");
      }
      else
      {
 System.out.println("验证码输入有误,请重新输入");
 if(j<=3)
 {
   System.out.print("请输入验证码");
   for(int i=0;i<4;i++)
   {
     arr[i]=str.charAt(sj.nextInt(61));//从str中随机截取4个单个字符并赋值给arr这个数组存放
   }
   System.out.println(arr);
   a=new String (arr);
 }
 else
 {
   System.out.println("输入有误,对不起,5次机会已用完");
 }
      }
    }
  }
}

输出结果:

验证码是: 
AVA8 
请输入验证码 
AVA8 
验证码输入正确
package com.hz.practice;


public class Practice04 {

  public static void main(String[] args) {

    String str1 = "asdasdas";
    String str2 = "as";
    //1.定义一个计数器。
    int total = 0;
    for (String temp = str1; temp!=null && 
 temp.length()>=str2.length();) {
      //2.获取子串第一次出现的位置
      if(temp.indexOf(str2) == 0){
 //3.从第一次出现的位置后剩余的字符串中继续获取子串出现的位置,每获取一次计数器加1
 total ++;
      }
      temp = temp.substring(1);
      System.out.print(temp+", ");
    }
    //4,当获取不到时,计数完成
    System.out.println("计数完成:"+total);
  }
}

输出结果:

sdasdas, dasdas, asdas, sdas, das, as, s, 计数完成:3
package com.hz.practice;

public class Practice05 {
   public static String getMaxSubString(String s1,String s2) { 
      String max = "",min = ""; 
      max = (s1.length()>s2.length())?s1: s2; 
      min = (max==s1)?s2: s1;    
//     sop("max="+max+"...min="+min); 
      for(int x=0; x

输出结果:

ab, a, b, b,
package com.hz.practice;
import java.util.Scanner;

public class Practice06 {
  public static void main(String[] args){
    Scanner input = new Scanner(System.in);
    String str = input.next();//接收任意字符串
    isOk1(str);     
}
  
  public static void isOk1(String str){
      boolean result = true;
      int count =(str.length()-1)/2;
      for (int x=0;x<=count;x++ ){
   if(str.charAt(x)!=str.charAt(str.length()-1-x)){
result = false;
break;
   }
      }
      if(!result)
   System.out.println("该字符串是不对称的");
      else
   System.out.println("该字符串是对称的");
  }
  
  
}

输出结果:

asdsa 
该字符串是对称的
package com.hz.practice;

public class Practice09 {
  public static void main(String[] args) {
    String str = "To be or not to be";
    String[] str2 = str.split(" ");
    for (int i = 0; i < str2.length; i++) {
      char[] ci = str2[i].toCharArray();
      System.out.print(" ");
      for (int j = ci.length-1; j >= 0 ; j--) {
 System.out.print(ci[j]);
      }
    }
  }
}
package com.hz.practice;

public class Practice10 {
  public static void main(String[] args) {
    String str = "this is a test of java";
//   (1) 统计该字符串中字母s出现的次数
    int count = 0;
    for (int i = 0; i < str.length(); i++) {
      if(str.charAt(i)=='s'){
 count++;
      }
    }
    System.out.println("字符串中字母s出现的次数:"+count);
//   (2) 取出子字符串"test"
    String str2 = (String) str.subSequence(10, 14);
    System.out.println(str2);
//   (3) 用多种方式将本字符串复制到一个字符数组Char[] str中.
    char[] c = str.toCharArray();
    System.out.println(c);
    for (int i = 0; i < c.length; i++) {
      System.out.print(c[i]);
    }
    System.out.println();
//   (4) 将字符串中每个单词的第一个字母变成大写, 输出到控制台。
      str=str.toLowerCase();
      String[] tt=str.split(" ");
      System.out.println(tt.length);
      for(int i=0;i0){
   System.out.print(String.valueOf(tt[i].charAt(0)).toUpperCase());
   System.out.print(tt[i].substring(1)+" ");
 }
      }
      System.out.println();
//   (5) 用两种方式实现该字符串的倒叙输出。(用StringBuffer和for循环方式分别实现)
      StringBuffer sb = new StringBuffer(str);
      System.out.println(sb.reverse().toString());
      char[] c3 = str.toCharArray();
      for (int i = c3.length-1; i >= 0 ; i--) {
 System.out.print(c3[i]);
      }
      System.out.println();
//   (6) 将本字符串转换成一个字符串数组,要求每个数组元素都是一个有意义的额英文单词,并输出到控制台
      String[] str5=str.split(" ");
      for (int i = 0; i < str5.length; i++) {
 System.out.print(str5[i]+", ");
      }
  }
}

输出结果:

字符串中字母s出现的次数:3 
test 
this is a test of java 
this is a test of java 
6 
This Is A Test Of Java 
avaj fo tset a si siht 
avaj fo tset a si siht 
this, is, a, test, of, java,

总结

以上就是本文关于Java探索之string字符串的应用代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:浅谈Java编程ToString()方法重写的意义、java tostring方法重写代码示例等,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/143499.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号