Java中对字符串的相应操作

对字符串的操作 包括统计字符串的字符数、指定字符在字符串的具体位置、英文字母的大小写转换、截取、替换 等等  

我们实现操作的办法是通过str.方法的 方式来实现

package mihe;

public class Test07 {
public static void main(String[] args) {
String str = "ab0cd!e一fg";

// length():统计当前字符串的字符个数
int in = str.length();
System.out.println(in);

// indexOf():查找指定字符再字符串中的位置
int index = str.indexOf("a");
System.out.println(index);

// toUpperCase():将字符串中的字符变为了大写形式
//英文字符除外 没有效果
String str2 = str.toUpperCase();
System.out.println(str2);

// toLowerCase():将字符串中的字符变为小写
String str3 = "WWMMDDHH";
String str4 = str3.toLowerCase();
System.out.println(str4);

// substring:截取字符串
String str5 = "abcdefg";
String str6 = str5.substring(0, 3);
System.out.println(str6);

String str7 = str5.substring(3);
System.out.println(str7);

// replaceAll:替换当前字符串中指定内容
String str8 = str5.replaceAll("abc", "xyz");
System.out.println(str8);

// trim:能够去掉当前字符串中两端的空格
String str9 = " abc def ";
System.out.println(str9.length());
String str10 = str9.trim();
System.out.println(str9);
System.out.println(str10);
// 字符串合字符串 + 等于拼接
String str100 = "123";
String str200 = "100";
System.out.println(str100+str200);
// 将字符串变为整数
int num1 = Integer.parseInt(str100);
int num2 = Integer.parseInt(str200);
System.out.println(num1+num2);

String str1000 = "abcde";
// charAt:找到指定字符串中位置的字符
char ch = str1000.charAt(2);
System.out.println(ch);
}

}




例如;要求用户从控制台上输入一个表达式,请计算出对应的结果 例如: 100-90

package mihe;
import java.util.Scanner;
public class Test08 {
public static void main(String[] args) {
//用户从控制台上输入一个表达式
//请计算出对应的结果
//例如: 100-90
Scanner scanner = new Scanner(System.in);
String str = scanner.nextLine();

if(str.indexOf("+")>=0)//判断如果是加法运算{

int index = str.indexOf("+");
String str1 = str.substring(0, index);
String str2 = str.substring(index+1);//将运算符两边的字符全部取出 
int num1 = Integer.parseInt(str1);
int num2 = Integer.parseInt(str2);//将运算符两边的全部字符转换成int型数
System.out.println(num1+num2);
}else if(str.indexOf("-")>=0){

}else if(str.indexOf("*")>=0){

}else if(str.indexOf("/")>=0){

}

}

}


例如 要求从控制台上输入一个字符串 
例如 aCWgJklR
        AcwGjKLr 

package mihe;


import java.util.Scanner;


public class Test09 {
public static void main(String[] args) {
//从控制台上输入一个字符串 
//例如 aCWgJklR
//    AcwGjKLr 
Scanner scanner = new Scanner(System.in);
String str = scanner.nextLine(); //定义str为输入的那个字符串 
String str2 = "";//转换之后的字符串
for (int i = 0; i < str.length(); i++) {
char ch = str.charAt(i);
if(ch+0>=97&&ch+0<=97+26)//小写{
ch = (char)(ch-32);//转化成大写
str2 = str2+ch;
}else if(ch+0>=65&&ch+0<=65+26)//大写{
ch = (char)(ch+32);//转化成小写
str2 = str2+ch;
}
}
System.out.println(str2);

}

}

本题的聪明指之处在于 将str.length 嵌入for循环当中去用,利用for循环 取到字符串当中的每一个字符 并赋值给ch。 之后利用if() elseif语句 将大小写转换 最后输出我们要得到的结果

英文字母中的a对应的是十进制的97  那么A对应的就是十进制的 65 a到z z=a+26


  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值