Java字符串应用

来源:互联网 发布:女变男网络电影 编辑:程序博客网 时间:2024/06/11 07:13
1、题目:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b。   
public static void main(String[] args) {
// TODO Auto-generated method stub
String str="abbaccdeff";
String c="";
for(int i=0;i<str.length();i++){
String temp=str.substring(0, i)+str.substring(i+1);
int idx=temp.indexOf(str.charAt(i));
if(idx==-1){
c=String.valueOf(str.charAt(i));
//System.out.println(c);
break;
}
}
System.out.println(c);
}
 
2、在字符串中删除特定的字符。
题目:输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。
例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”。
 
public static void main(String[] args) {
String str1="They are students";
String str2="aeiou";
for(int i=0;i<str2.length();i++){
//int idx=str1.indexOf(str2.charAt(i));
int idx=0;
while((idx=str1.indexOf(str2.charAt(i)))!=-1){
//str1=str1.replace(String.valueOf(str2.charAt(i)), "");
str1=str1.substring(0,idx)+str1.substring(idx+1);
}
}
System.out.println(str1);
}
 
3、左旋转字符串
题目:
定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部。
如把字符串abcdef左旋转2位得到字符串cdefab
public static void main(String[] args) {
String str="abcdef";
int length=2;
String end=str.substring(0,length);
String start=str.substring(length);
String ret=start+end;
System.out.println(ret);
}
 
4、将“Hello oneDream one。”取出指定字符串中的单词,前后交换,标点符号不变。结果为 One helloOne dream
(也可使用split方法实现)
public static void main(String[] args) {
String str="Hello one,Dream one";
char[] items=str.toCharArray();
int offset=0;
boolean ifInsr=false;
StringBuffer sb=new StringBuffer();
for(int i=0;i<items.length;i++){
if(items[i]==','){
ifInsr=false;
offset=i+1;
}
if(items[i]==''){
ifInsr=false;
}
if(items[i]==' '){
items[offset]=(char)((int)items[offset]+32);
sb.setCharAt(offset, items[offset]);
items[i+1]=(char)((int)items[i+1]-32);
//System.out.println(items[offset]);
ifInsr=true;
}
if(ifInsr){
sb.insert(offset, items[i]);
if(items[i]!=' '){
offset++;
}
}else{
sb.append(items[i]);
}
}
System.out.println(sb.toString());
}
5.欢迎注册系统,验证身份证必须是16位或者18位,手机号必须11位,座机号区号必须是4位,电话号码必须是7位,如0358-3033266 ,符合要求注册成功,否则重新输入
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
System.out.println("***欢迎进入注册系统***");
while(true){
System.out.print("请输入身份证:");
String idCard=sc.next();
System.out.print("请输入手机号:");
String tel=sc.next();
System.out.print("请输入座机号:");
String phone=sc.next();
String[] phone2=new String[2];
phone2=phone.split("-");
String ch="-";
int index=phone.indexOf(ch);
int index2=phone.lastIndexOf(ch);
if(idCard.length()==16||idCard.length()==18){
if(tel.length()==11){
if(index!=4&&index2!=12){
System.out.println("座机号码区号必须为4位,电话号码必须是7位!");
continue;
}else{
System.out.println("注册成功");
break;
}
}else{
System.out.println("手机号必须是11位!");
continue;
}
}else{
System.out.println("身份证号必须是16位或18位!");
continue;
}
}

}

原创粉丝点击