String的一些方法试探
package countio; import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException; public class MyUtil {
/*
* 工具类中的方法都是静态方式访问的 因此将构造器私有不允许创建对象(绝对好习惯)
*/
private MyUtil(){
throw new AssertionError();
}
/*
* @param filename 文件名
* @param word 字符串
* @return 字符串在文件中出现的次数
*/
public static int countWorInFile(String filename,String word){
int counter=;
FileReader fr = null;
BufferedReader br = null;
try{
fr = new FileReader(filename);
br = new BufferedReader(fr);//字符缓存输入流(从文件--输入-->程序)
String line = null;
while((line = br.readLine())!= null){
int index = -;
//每一次读取到的字符串一定大于等于所要找的串hello indexOf返回某个指定的字符串值在字符串中首次出现的位置
while((line.length() >= word.length() && (index =line.indexOf(word))>=)){
counter++;
System.out.println(index);//输出4 4
line = line.substring(index+word.length());//从0开始
}
}
}catch(Exception e){
e.printStackTrace();
}finally{
if(br != null){
try {
br.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//fr.close();同上进行先判断后关闭 防止 还没建立就关闭掉资源了
}
return counter; }
public static void main(String[] args){
/*
* File.separator表示系统相关的分隔符,Linux下为:/ Windows下为:\\
* heiwhellodohehellod(有2个hello)
*/
//String filename = "\\d:\\hello.txt\\";
String filename = File.separator+"d:"+File.separator+"hello.txt"+File.separator;
int counter = countWorInFile(filename,"hello");
System.out.println("字符串hello出现的次数是:"+counter);
}
}
java中String的一些方法深入解析
1、public String(char[] c,begin,length).
从字符数组c的下标begin处开始,将长度为length的字符数组转换为字符串。
begin与length可以省略,即将字符数组c转换为字符串。另:字符数组可改为字节数组byte[] b.
char[] c=new char[]{'j','y','6','a','4','t','9'};
String s1=new String(c);
String s=new String(c,2,3);
System.out.println(s1);
System.out.println(s);
2、public char[] toCharArray().
字符串装换成字符数组。
3、public char charAt(int 下标).
返回字符串中指定位置的字符。
String s="jkdfsdf";
char t=s.charAt(3);
4、public byte[] getBytes().
将一个字符串转换成字节数组,其默认输出为ASCII值,可通过char强制类型转换输出字节。String s="sjdfsdf";
byte[] b=s.getBytes();
5、public String trim().
清除字符串左右两端的空格。
String s="skkgnsdfsd ";
System.out.println(s.trim());
6、public int indexOf(String s,int index).
从字符串中查找指定位置之后指定的字符所在的位置。若不指定位置,则从头开始。
String s="dgdgdg";
int n=s.indexOf("t");//从头开始查找
int n1=s.indexOf("d",3);//从位置3处开始查找
7、public String substring(int beginindex,int endindex ).
截取所指定的从开始位置到结束位置的字符串,不包含结束字符。结束位置可以省略。
String s="sdgsgghd";
String s1=s.substring(2,4);
String s2=s.substring(2);
8、public String[] split(String s).
通过指定的字符分割字符串。
String s="dfgdhdfgdrhrhgdt";
String ss[]=s.split("d");
for(int i=0;i<ss.length;i++)
System.out.println(ss[i]);
9、public String toUpperCase()./public String toLowerCase().字符大小写转换。
String s="dfgdhdfgdrhrhgdt";
String s1=s.toUpperCase();//字符全大写
String s2=s.toLowerCase();//字符全小写
10、public boolean startsWith(String s)./public boolean endsWith(String s).检测字符串是否是以指定的字符开始/结尾。
String s="dfdhffghrtgfjn mjg";
boolean t1=s.startsWith("e");
boolean t2=s.endsWith("h");
11、判断字符串是否相等,区分大小写:equals()。不区分大小写equalsIgnoreCase().
String s="dfgdghdf";
String s1="sfsgsdu";
s.equals(s1);
12、public String replaceAll(String s,String s1).将字符串中的s都替换成s1.
String s="dfgdghdf";
String s1=s.replaceAll("d","f");
package stringtest;
public class TestString {
public static void main(String[] args) {
char[] c=new char[]{'j','y','','a','','t',''};
String s1=new String(c);
String s=new String(c,,);
/* System.out.println(s1.charAt(3));//a
System.out.println(s);//6a4
*/
/*char[] c1 = s1.toCharArray();
for(int i=0; i<c1.length; i++){
System.out.print(c1[i]+",");//j,y,6,a,4,t,9,
}*/
/*String result="";
byte[] bytes = s1.getBytes();*/
/*String ss="dgdgdg";
int n=ss.indexOf("t");//从头开始查找
int n3=ss.indexOf("d",3);//从位置3处开始查找
int n1=ss.indexOf("d",1);//从位置1处开始查找
System.out.println(n);//-1
System.out.println(n1);//2
System.out.println(n3);//4
*/
String dd="sdgsgghd";
System.out.println(dd.substring(,));//gs
System.out.println(dd.substring());//gsgghd
}
}
String的一些方法试探的更多相关文章
- ERROR: “System.Web.Mvc.Controller.File(string, string, string)”是一个“方法”
ERROR: “System.Web.Mvc.Controller.File(string, string, string)”是一个“方法”,这在给定的上下文中无效 这是一个与Controller.F ...
- java String 中 intern方法的概念
1. 首先String不属于8种基本数据类型,String是一个对象. 因为对象的默认值是null,所以String的默认值也是null:但它又是一种特殊的对象,有其它对象没有的一些特性. 2. ne ...
- PDO 查询mysql返回字段整型变为String型解决方法
PDO 查询mysql返回字段整型变为String型解决方法 使用PDO查询mysql数据库时,执行prepare,execute后,返回的字段数据全都变为字符型. 例如id在数据库中是Int的,查询 ...
- IE8下String的Trim()方法失效的解决方法
String的Trim()方法失效,在ie8下是有这样的情况的,解决方法也很简单使用$.trim(str)即可,需要的朋友可以了解下 用jquery的trim()方法,$.trim(str)就可以了.
- asp.net遍历页面中所有TextBox,并赋值为String.Empty的方法
本文介绍下,如何用.net遍历页面中的所有TextBox控件,并赋值为string.empty的方法,通过实例学习具体操作.有需要的朋友可以参考下. 一.遍历窗体控件 1,普通页面遍历TextBo ...
- String 的intern() 方法说明
1.说明 Java中string.intern()方法调用会先去字符串常量池中查找相应的字符串,如果字符串不存在,就会在字符串常量池中创建该字符串然后再返回. 2.源码说明 public native ...
- JavaScript中String.prototype.replace() 方法的使用
摘抄于:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String/replace ...
- 深入分析Java的String类的方法与特点
字符串是任何编程语言都必须支持的变量类型,有些编程语言是直接提供了原生的变量类型,有些编程语言则使用语法特性以 SDK 的形式提供支持.在Java编程平台中,对字符串的支持使用了后者的形式,就是通过在 ...
- 《java入门第一季》之类(String类常见方法小叙)
String类下面的构造方法和一些常见的方法: /* * 字符串:就是由多个字符组成的一串数据.也可以看成是一个字符数组. * 通过查看API,可以知道 * A:字符串字面值"abc&quo ...
随机推荐
- ASP.NET MVC:模块化/插件式文章汇总
方案 Shazwazza | Developing a plugin framework in ASP.NET MVC with medium trust 基于ASP.NET MVC3 Razor的模 ...
- 猫都能学会的Unity3D Shader入门指南(二)
关于本系列 这是Unity3D Shader入门指南系列的第二篇,本系列面向的对象是新接触Shader开发的Unity3D使用者,因为我本身自己也是Shader初学者,因此可能会存在错误或者疏漏,如果 ...
- 黑帆第一季/全集Black Sails迅雷下载
黑帆 第一季 Black Sails Season 1 (2014)本季看点:剧集将会是英国小说家罗伯特·路易斯·史蒂文森(Robert Louis Stevenson)经典的海盗故事<金银岛& ...
- Asp.Net Mvc3.0(MEF依赖注入理论)
前言 Managed Extensibility Framework(MEF)是.NET平台下的一个扩展性管理框架,它是一系列特性的集合,包括依赖注入(DI)等.MEF为开发人员提供了一个工具,让我们 ...
- ExtJS 4.2 教程-06:服务器代理(proxy)
转载自起飞网,原文地址:http://www.qeefee.com/extjs-course-6-server-proxy ExtJS 4.2 教程-01:Hello ExtJS ExtJS 4.2 ...
- PHP获取指定函数定义在哪个文件中及行号
当调试开源的代码时,希望查看某个函数的定义,那么就需要定位其位置.特别是有的项目中,函数会有多个地方都有定义,那么如果我想知道当前调用的这个函数是在哪里定义的,可以用下面这个方法. function ...
- JAVAWEB开发之HttpServletResponse和HttpServletRequest详解(上)(各种乱码、验证码、重定向和转发)
HttpServletResponse简介 Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象 request和re ...
- 第一章 AOP
关于AOP,通常我们会使用AspectJ注解来做,共有6中切面 前置:@Before 后置:@After 返回值:@AfterReturing 异常:@AfterThrowing 环绕:@Around ...
- [转]抢先Mark!微信公众平台开发进阶篇资源集锦
FROM : http://www.csdn.net/article/2014-08-01/2820986 由CSDN和<程序员>杂志联合主办的 2014年微信开发者大会 将于8月23日在 ...
- MD5加密算法中的加盐值 ,和彩虹表攻击 防止彩虹表撞库
一.什么是彩虹表? 彩虹表(Rainbow Tables)就是一个庞大的.针对各种可能的字母组合预先计算好的哈希值的集合,不一定是针对MD5算法的,各种算法的都有,有了它可以快速的破解各类密码.越是复 ...