String类操作字符串

/**
*
*/
package com.shiyonglei.String;

import java.util.Scanner;

/**
* @author 夜鹏
*创建String类型:
* 1.String s = "Hello World";
* 2.String s = new String("Hello World");
* 它们输出的结果一样,但是 它们有什么区别?
* String 类型的常用方法:
* 1.字符串.length();  在语法中,length()返回字符串的长度
* 2.字符串.equals();  使用 equals()比较两个字符串
* 3.字符串.concat();        字符串2连接到字符串1的后面,返回连接后的新字符。
* 4.字符串.split(sep,lomit);  sep为可选项,标志拆分字符串时使用  ;lomit也是可选项,限制元素返回的个数
* 还有一些其他常用的方法:
* A.public int indexOf(int ch)
* B.public int indexOf(String value) 从0开始搜索第一个出现的字符 ch 或字符串value (A.B)
* C.public int lastIndexOf(int ch)
* D.public int lastIndexOf(String value) 从最后的位置开始搜索最后一个出现的字符 ch 或字符串value (C.D)
* E.public String substring(int indexOf) 提取从位置索引开始的字符串部分(E)
* F.public String substring(int beginindex, int endindex) 提取beginindex和endindex之间的字符串部分(F)
* G.public String trim() 返回一个前后不含任何空格的调用字符串的副本(G)
* 字符串是一个字符序列,每一个字符串都有自己的位置,字符串事实上也是一个字符数组,所以它的位置从0开始到字符串长度的-1结束:
* 如:
* 0 1 2 3<-------位置,字符串中的字符索引
*    天   下   无   敌
* 前面的A,B,C,D方法的作用是搜索字符索引,后面的E,F,G方法用于提取字符或字符串
*
*
* 在Java中:
* equals() 和“==”引用于两个字符串。
* 其中equals比较他们的值
* “==”比较他们的地址值
* 2017年12月19日
*/
public class Dame_String {

/**
* @param args
*/
public static void main(String[] args) {

//Dmae_String();

//Dame_concat();

//Dame_Verfy();

//Dame_split();

}

/**
*
*/
private static void Dame_split() {
String words = "床前明月光 疑是地上霜 举头望明月 低头思故乡 ";
System.out.println("--原歌词格式--");
System.out.println(words);

String printword[] = new String[100];
System.out.println("--拆分后的歌词格式--");

printword = words.split(" ");//拆分

for(int i = 0; i < printword.length; i++){
System.out.println(printword[i]);//输出
}
}

/**
*
*/
private static void Dame_Verfy() {
/**
* 小明用作业提交系统提交Java作业 时,输入Java文件名,并输入自己的电子邮箱,提交前系统检查:
* 是否是合法的Java文件
* 是否是合法的电子邮箱
*/
//1.判断它们的文件名和邮箱是否正确
boolean fileCorrect = false; //标志Java文件
boolean emailCorrect = false; //标志E-mail

Scanner input = new Scanner(System.in);
System.out.println("--欢迎进入作业提交系统--");
System.out.println("请输入Java文件名:");
String fileName = input.next();

System.out.println("请输入你的邮箱:");
String email = input.next();

int index = fileName.lastIndexOf("."); //  2.用lastIndexOf搜索最后一个出现“.”的位置
if(index != -1 && index !=0 && fileName.substring(index+1,fileName.length()).equals("java")){

/**
* “.”不能没有, ---index不能在0这个位置----用方法提取“。”后面的字符串。length代表这个字符串的长度,在用equals判断是否有java
* 只有满足了这3个条件才是java文件,
* 其中filnName.substring(index+1,fileName.length())代表了java文件后面的字符串
*/
fileCorrect = true;

}else{
System.out.println("文件名无效!");
}

if(email.indexOf("@") !=-1 && email.indexOf('.') > email.indexOf('@')){
//用方法indexOf判断是否有“@”---“。”,在用方法indexOf找出“。” --“@”的位置
emailCorrect = true;
}else{
System.out.println("E-mail无效!");
}

if(fileCorrect && emailCorrect){
System.out.println("提交作业成功!");
}else{
System.out.println("提交作业失败!");
}
}

/**
*
*/
private static void Dame_concat() {
/**
* 字符串.concat(字符串 2);
*/

String s1 = new String("您好!");
String s2 = new String("大家好,才是真 的好!");

System.out.println("链接之前的s1:"+s1);
System.out.println("链接之前的s2:"+s2);
/**
* 没有连接之前
*/
String s3 = s1.concat(s2);
/**
* 连接之后
*/
System.out.println("链接之后:"+s3);
}

/**
* 字符串.length();
* 字符串.equals();
*/
private static void Dmae_String() {
//length()的实例和equals()
Scanner input = new Scanner(System.in);
System.out.println("请输入用户名:");
String name,egt;
name = input.next();
System.out.println("请输入密码:");
egt = input.next();
System.out.println("用户名账号的长度:"+name.length()+"\n密码的长度"+egt.length()); //name.length()  代表了长度

if(name.equals("libai") && egt.equals("12345")){ //name.equals()  比较两个字符串
System.out.println("登录成功!用的是equals方法");
}else{
System.out.println("登录失败!11");
}

//上面是String类型equals的比较方法。它们不能比较大写和小写

if(name.equalsIgnoreCase("LIBAI") && egt.equalsIgnoreCase("12345")){ //equalsIgnoreCase可以不分字母大小写
System.out.println("登录成功,用的是equalsIgnoreCase方法");
}else{
System.out.println("登录失败!22");
}
}


}

猜你喜欢

转载自153751717.iteye.com/blog/2405040