典型的字符串处理代码(algs4)
2017-08-05 23:25
225 查看
Java的字符串AP(部分)
拓展阅读:
java中length,length(),size()区别
Public class String |
String() 创建一个空字符串 |
Int length() 字符串长度 |
Int charAt(int i) 第i个字符(从0开始计) |
Int indexOf(String p) p第一次出现的位置(如果没有则返回-1) |
Int indexOf(Strign p,int i) p在i个字符后第一次出现的位置(如果没有则返回-1) |
String contact(String t) 把t附在该字符串末尾 |
String substring(int I,int j) 该字符串的子字符串(第i个字符到第j-1个字符) |
String split(String delim) 使用delim分隔符切分字符串 |
Int compareTo (String t) 比较字符串 |
Boolean equals(String t) 该字符串的值和t的值是否相同 |
Int hashCode() 散列值 |
package string; /*典型的字符串处理代码*/ public class StringManipulation { /*判断字符串是否是一条回文*/ public static boolean isPalindrome(String s) { for(int i=0;i<s.length()/2;i++) if(s.charAt(i)!=s.charAt(s.length()-1-i)) return false; return true; } /*从一个命令行参数中提取文件名和扩展名*/ public static String[] fileName1(String s) { String[] name=s.split("\\."); /*使用\\转义*/ return name; } public static String[] fileName2(String s) { int dot=s.indexOf("."); String[] name=new String[2]; name[0]=s.substring(0, dot); name[1]=s.substring(dot+1, s.length()); return name; } /*打印出标准输入中所有含有通过命令行指定字符串的行*/ public static String appoint(String s) { String query="delete"; if(s.contains(query)) return s; return null; } /*以空白字符为分隔符从输入流中创建一个字符串数组*/ public static String[] stringArray(String s) { String[] words =s.split("\\s+"); /*"\\s+"表示一个或多个制表符、空格、换行符或回车*/ return words; } /*检查一个字符串数组中的元素是否已按照字母表顺序排列*/ public static boolean isSorted(String[] a) { for(int i=0;i<a.length-1;i++) if(a[i].compareTo(a[i+1])>0) /*Int compareTo (String t) 比较字符串*/ return false; return true; } }
package string; import java.util.Scanner; /*典型的字符串处理代码-测试用例*/ public class TestManipulation { public static void main(String[] args) { int n; String s; boolean t; String[] a = null; Scanner sc=new Scanner(System.in); System.out.println("判断字符串是否是一条回文"); s=sc.nextLine(); t=StringManipulation.isPalindrome(s); System.out.println(t); System.out.println("从一个命令行参数中提取文件名和扩展名"); s=sc.nextLine(); a=StringManipulation.fileName1(s); System.out.println("split(\"\\.\"):"); /*\表示后面跟一个符号*/ for(int i=0;i<a.length;i++) System.out.println(a[i]); a=StringManipulation.fileName2(s); System.out.println("indexOf(\".\"):"); for(int i=0;i<a.length;i++) System.out.println(a[i]); System.out.println("打印出标准输入中所有含有通过命令行指定字符串的行"); System.out.println("请先输入命令行的个数"); n=sc.nextInt(); System.out.println("请输入命令行"); sc.nextLine(); /*读走换行符*/ for(int i=0;i<n;i++) { s=sc.nextLine(); if(StringManipulation.appoint(s)!=null) System.out.println(StringManipulation.appoint(s)); } System.out.println("以空白字符为分隔符从输入流中创建一个字符串数组"); s=sc.nextLine(); a=StringManipulation.stringArray(s); for(int i=0;i<a.length;i++) System.out.println(a[i]); System.out.println("检查一个字符串数组中的元素是否已按照字母表顺序排列"); System.out.println("请先要输入的输入元素个数"); n=sc.nextInt(); a=new String ; /*重要!!*/ System.out.println("请输入元素"); sc.nextLine(); /*读走换行符*/ for(int i=0;i<n;i++) a[i]=sc.nextLine(); t=StringManipulation.isSorted(a); System.out.println(t); sc.close(); } }
拓展阅读:
java中length,length(),size()区别
相关文章推荐
- 典型的数组处理代码(algs4)
- [算法] 关于algs4 MSD.java 高位优先的字符串排序 的逐行代码解释
- 典型的数组和字符串处理代码
- 典型的字符串处理代码(page50)
- NSString / NSMutableString 字符串处理,常用代码 (实例)
- 几种典型程序Button处理代码的定位
- PHP 常用字符串处理代码片段
- 基于Linux0.11源代码的操作系统内核典型处理过程分析1
- 将字符串作为php代码进行处理
- android代码重构日记(三)——字符串资源处理及其格式化
- 天气预报之提取城市代码:将含中文和数字的字符串分隔处理提取数组
- 字符串处理算法(五)多线程实现代码行数统计。[风林火山]
- C++用纯字符串来处理高精度问题代码
- 几种典型程序Button处理代码的定位
- 一道典型的字符串处理的例题!!【很经典】
- 旧文重整理:数据结构和字符串处理代码整理
- NSString / NSMutableString 字符串处理,常用代码 (实例)
- JS字符串处理实例代码
- servlet处理jreport典型代码
- [ASP.NET2.0]Common层通用代码之字符串处理