
正文
反向索引java代码 java反向代理实现
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java 截取 反斜杠
String str="F:\resin-3.0.14\webapps\jszx\upDown\2009年1月\900006交通运输集团\汇总.xls";
String s=str.subString(str.lastIndexOf("\\",str.indexOf("交通运输集团"),str.indexOf("交通运输集团"));
这样返回反向索引java代码的s就是900006反向索引java代码,第二个同上
其中反向索引java代码:
substring(int beginIndex, int endIndex)
返回一个新字符串,它是此字符串反向索引java代码的一个子字符串
indexOf(String str)
返回指定子字符串在此字符串中第一次出现处反向索引java代码的索引。
lastIndexOf(String str, int fromIndex)
返回指定子字符串在此字符串中最后一次出现处的索引,从指定的索引开始反向搜索。
相关问答
Q1: JAVA字符串获取索引问题,为什么不能正确返回索引而是返回-1,代码如下
字符:H E L L O!
位置:0 1 2 3 4 5
lastIndexOf()是从后往前找,lastIndexOf('L',1)表示从 E 往前找,当然找不到了,
你把 lastIndexOf('L',2或3或4或5)就能找到了。
Q2: java中string怎么使用
以下是关于string的七种用法,注意哦,记得要时常去查看java的API文档,那个里面也有很详细的介绍
1获取
1.1:字符串中包含的字符数,也就是字符串的长度。
int length():获取长度
1.2:根据位置获取位置上某个字符。
char charAt(int index)
1.3:根据字符获取该字符在字符串中的位置。
int indexOf(int ch):返回的是ch在字符串中第一次出现的位置。
int indexOf(int ch,int fromIndex):从fromIndex指定位置开始,获取ch在字符串中出现的位置。
int indexOf(String str):返回的是str在字符串中第一次出现的位置。
int indexOf(String str,int fromIndex):从fromIndex指定位置开始,获取str在字符串中出现的位置。
1.4:int lastIndexOf(String str):反向索引。
2判断
2.1:字符串中是否包含某一个子串。
boolean contains(str);
特殊之处:indexOf(str):可以索引str第一次出现为止,如果返回-1,表示该str不在字符串中存在。
所以,也可以用于对指定判断是否包含。
if(str.indexOf("a")!=1)
而且该方法既可以判断,也可以获取出现的位置。
2.2:字符串中是否有内容。
boolean isEmpty():原理就是判断长度是否为0。
2.3:字符串是否以指定内容开头。
boolean startsWith(str);
2.4:字符串是否以指定内容结尾。
boolean endsWith(str);
2.5:判断字符内容是否相同,复写了object类中的equals方法。
boolean equals(str);
2.6:判断内容是否相同,并忽略大小写。
boolean.equalsIgnorecase();
3转换
3.1:将字符数组转成字符串。
构造函数:String(char[])
String(char[],offset,count):将字符数组中的一部分转成字符串
静态方法:
static String copyValueOf(char[]);
static String copyValueOf(char[] data,int offset,int count);
static String valueOf(char[]);
3.2:将字符串转成字符组
char[] tocharArray();
3.3:将字节数组转成字符串。
String(byte[])
String(byte[],offset,count):将字节数组中的一部分转成字符串
3.4:将字符串转成字节数组。
byte[] getBytes()
3.5:将基本数据类型转成字符串,
static String valueOf(int)
static String valueOf(double)
// 3+"" 与 String.valueOf(3)的值是一样的
特殊:字符串和字节数组在转换过程中,是可以指定编码的。
4替换
String replace(oldchar,newchar);
5切割
String[] split(regex);
6子串。获取字符串中的而一部分
String subString(begin);
String subString(begin,end);
7转换,去除空格,比较。
7.1:将字符串转成大写或小写
String toUpperCsae() 大转小
String toLowerCsae() 小转大
7.2:将字符串两端的多个空格去除
String trim();
7.3:对两个字符串进行自然顺序的比较
int compareTo(string);
请看如下代码,下面的代码都是针对上面string七种用法而进行一一举例说明:
复制代码 代码如下:
class StringMethodDemo
{
public static void method_Zhuanhuan_Qukong_Bijiao()
{
String s = " hello Java ";
//打印结果是:(hello和java前后门都有空格)hello java
sop(s.toUpperCase());
//打印结果是:(HELLO和JAVA前后门都有空格)HELLO JAVA
sop(s.toLowerCase());
//打印及结果是:不带空格的“hello java”
sop(s.trim());
//比较数的大写,打印结果是:1,因为b对应ascii值是98,
//a对应是97,所以b-a=1
String s1 = "abc";
String s2 = "aaa";
sop(s1.compareTo(s2));
}
public static void method_sub()
{
String s = "abcdef";
//打印结果是:cdef,从指定位置开始到结尾。如果角标不存在,会出现字符串角标越界。
sop(s.substring(2));
//打印结果是:cd,包含头,不包含尾。
sop(s.substring(2,4));
}
public static void method_split()
{
String s = "zhangsan,lisi,wangwu";
String[] arr = s.split(",");
for(int x=0; xarr.length; x++)
{
sop(arr[x]);
}
}
public static void method_replace()
{
String s = "hello java";
//String s1 = s.replace('a','n');
//String s1 = s.replace('w','n'); 如果要替换的字符不存在,返回的还是原串
String s1 = s.replace("java","world");//打印结果是:hello world
sop("s="+s); //打印结果是:hello java因为字符串一旦被初始化,值就不可被改变
sop("s1="+s1);//打印结果是:hello jnvn
}
public static void method_trans()
{
char[] arr = {'a','b','c','d','e','f'};
String s = new String(arr,1,3);
sop("s="+s);//打印结果是:bcd
String s1 = "zxcvbnm";
char[] chs = s1.toCharArray();
for(int x=0; xchs.length; x++)
{
sop("ch="+chs[x]);//打印结果是:ch=z,x,c,v,b,n,m
}
}
public static void method_is()
{
String str = "ArrayDemo.java";
//判断文件名称是否是Array单词开头
sop(str.startsWith("Array"));
//判断文件名称是否是.java的文件
sop(str.endsWith(".java"));
//判断文件中是否包含Demo
sop(str.contains("Demo"));
}
public static void method_get()
{
String str = "abcdeakpf";
//长度
sop(str.length());
//根据索引获取字符
sop(str.charAt(4));
//sop(str.charAt(40));当访问到字符串中不存在的角标时会发生StringIndexOutOfBoundsException(字符串角标越界异常)
//根据字符获取索引
//sop(str.indexOf('a'));
sop(str.indexOf('a',3));//打印的是5,因为角标3是d,
//所以从d后面开始找a,第5个角标是a
//sop(str.indexOf('t',3))打印:-1,如果没有找到角标,返回-1
//反向索引一个字符出现的位置(从右往左查找,但是角标还是从左开始)
sop(str.lastIndexOf("a"));
}
public static void main(String[] args)
{
method_Zhuanhuan_Qukong_Bijiao();
//method_sub();
//method_split();
//method_replace();
//method_trans();
//method_is();
//method_get();
/*
String s1 = "abc";
String s2 = new String("abc");
String s3 = "abc";
System.out.println(s1==s2);
System.out.println(s1==s3);
*/
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
Q3: 编写一个java程序,完成以下功能: 1) 声名为s的string对象,并使它的内容是“ Call Me Ishmael ”; 2)
public class TestString {
public static void main(String[] args) {
String s=" Call Me Ishmael ";
System.out.println("原字符串:"+s);
System.out.println("字符串长度:"+s.length());
System.out.println("字符串第一个字符:"+s.charAt(0));
System.out.println("字符串最后一个字符:"+s.charAt(s.length()-1));
/*注:由于字符串中前后都有空格,因此他的长度为17,第一个和最后一个字符都是空格。去掉前后的空格方法是: s=s.trim(); */
String str=s.trim();
System.out.println("去掉字符串前后空格后:");
System.out.println("字符串第一个字符:"+str.charAt(0));
System.out.println("字符串最后一个字符:"+str.charAt(str.length()-1));
System.out.println("第一个单词:"+s.trim().substring(0, s.trim().indexOf(" ")));
System.out.println("将'C'替换为'B':"+s.replace('C', 'B'));
System.out.println("截取Me:"+s.substring(6,8));
System.out.println("打印s中的各个单词:");
str=s.trim();
while(str.indexOf(' ')!=-1){
int index=str.indexOf(' ');
System.out.println(str.substring(0, index));
str=str.substring(index+1,str.length());
}
System.out.println(str);
System.out.println("将单词倒序排列:");
str=s.trim();
while(str.lastIndexOf(' ')!=-1){
int index=str.lastIndexOf(' ');
System.out.print(str.substring(index+1,str.length())+" ");
str=str.substring(0,index);
}
System.out.println(str);
System.out.println("升序排列各个单词:");
String[] ss=s.split(" ");
for(int i=1;i=ss.length;i++){
for(int j=1;j=ss.length-i;j++){
if(ss[j-1].compareTo(ss[j])0){
str=ss[j-1];
ss[j-1]=ss[j];
ss[j]=str;
}
}
}
for(int i=0;iss.length;i++){
System.out.print(ss[i]+" ");
}
System.out.println();
System.out.println("全部字母大写:"+s.toUpperCase());
System.out.println("全部字母小写:"+s.toLowerCase());
System.out.println(s.toLowerCase().indexOf("me")==-1 ? "字符串中不包含me":"字符串中包含me");
System.out.println(s.startsWith("Tsh")?"字符串以Tsh开头":"字符串不以Tsh开头");
System.out.println(s.endsWith("txt")?"字符串以txt结尾":"字符串不以txt结尾");
s=" Call Me Ishmael ";
System.out.println("去掉该字符串两边的空格:"+s.trim());
}
}
Q4: 正向索引与反向索引(solr)
正向索引(正排索引) 反向索引java代码:正排表是以文档的ID为关键字反向索引java代码,表中记录文档中每个字的位置信息,查找时扫描表中每个文档中字的信息直到找出所有包含查询关键字的文档。
正排表结构如图1所示,这种组织方法在建立索引的时候结构比较简单,建立比较方便且易于维护;因为索引是基于文档建立的,若是有新的文档加入,直接为该文档建立一个新的索引块,挂接在原来索引文件的后面。若是有文档删除,则直接找到该文档号文档对应的索引信息,将其直接删除。但是在查询的时候需对所有的文档进行扫描以确保没有遗漏,这样就使得检索时间大大延长,检索效率低下。
尽管 正排表的工作原理非常的简单 ,但是由于其检索效率太低,除非在特定情况下,否则实用性价值不大。
反向索引(倒排索引) :倒排表以字或词为关键字进行索引,表中关键字所对应的记录表项记录了出现这个字或词的所有文档,一个表项就是一个字表段,它记录该文档的ID和字符在该文档中出现的位置情况。
由于每个字或词对应的文档数量在动态变化,所以倒排表的建立和维护都较为复杂,但是在查询的时候由于可以一次得到查询关键字所对应的所有文档,所以效率高于正排表。在全文检索中,检索的快速响应是一个最为关键的性能,而索引建立由于在后台进行,尽管效率相对低一些,但不会影响整个搜索引擎的效率。 倒排表的结构图如图2:
Q5: java中的string用法
java中的string用法,可以到java api查找方法的使用方式:
class StringMethodDemo
{
public static void method_Zhuanhuan_Qukong_Bijiao()
{
String s = " hello Java ";
//打印结果是:(hello和java前后门都有空格)hello java
sop(s.toUpperCase());
//打印结果是:(HELLO和JAVA前后门都有空格)HELLO JAVA
sop(s.toLowerCase());
//打印及结果是:不带空格的“hello java”
sop(s.trim());
//比较数的大写,打印结果是:1,因为b对应ascii值是98,
//a对应是97,所以b-a=1
String s1 = "abc";
String s2 = "aaa";
sop(s1.compareTo(s2));
}
public static void method_sub()
{
String s = "abcdef";
//打印结果是:cdef,从指定位置开始到结尾。如果角标不存在,会出现字符串角标越界。
sop(s.substring(2));
//打印结果是:cd,包含头,不包含尾。
sop(s.substring(2,4));
}
public static void method_split()
{
String s = "zhangsan,lisi,wangwu";
String[] arr = s.split(",");
for(int x=0; xarr.length; x++)
{
sop(arr[x]);
}
}
public static void method_replace()
{
String s = "hello java";
//String s1 = s.replace('a','n');
//String s1 = s.replace('w','n'); 如果要替换的字符不存在,返回的还是原串
String s1 = s.replace("java","world");//打印结果是:hello world
sop("s="+s); //打印结果是:hello java因为字符串一旦被初始化,值就不可被改变
sop("s1="+s1);//打印结果是:hello jnvn
}
public static void method_trans()
{
char[] arr = {'a','b','c','d','e','f'};
String s = new String(arr,1,3);
sop("s="+s);//打印结果是:bcd
String s1 = "zxcvbnm";
char[] chs = s1.toCharArray();
for(int x=0; xchs.length; x++)
{
sop("ch="+chs[x]);//打印结果是:ch=z,x,c,v,b,n,m
}
}
public static void method_is()
{
String str = "ArrayDemo.java";
//判断文件名称是否是Array单词开头
sop(str.startsWith("Array"));
//判断文件名称是否是.java的文件
sop(str.endsWith(".java"));
//判断文件中是否包含Demo
sop(str.contains("Demo"));
}
public static void method_get()
{
String str = "abcdeakpf";
//长度
sop(str.length());
//根据索引获取字符
sop(str.charAt(4));
//sop(str.charAt(40));当访问到字符串中不存在的角标时会发生StringIndexOutOfBoundsException(字符串角标越界异常)
//根据字符获取索引
//sop(str.indexOf('a'));
sop(str.indexOf('a',3));//打印的是5,因为角标3是d,
//所以从d后面开始找a,第5个角标是a
//sop(str.indexOf('t',3))打印:-1,如果没有找到角标,返回-1
//反向索引一个字符出现的位置(从右往左查找,但是角标还是从左开始)
sop(str.lastIndexOf("a"));
}
public static void main(String[] args)
{
method_Zhuanhuan_Qukong_Bijiao();
//method_sub();
//method_split();
//method_replace();
//method_trans();
//method_is();
//method_get();
/*
String s1 = "abc";
String s2 = new String("abc");
String s3 = "abc";
System.out.println(s1==s2);
System.out.println(s1==s3);
*/
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
反向索引java代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java反向代理实现、反向索引java代码的信息别忘了在本站进行查找喔。








