Java-3
从键盘输入字符串并输出:
Scanner sc =new Scanner(System.in);
String line = sc.nextLine();//可以ctrl alt v自动生成一个变量。
System.out.println(line);
String对象特点
通过new出来的对象,他们的赋值虽然是相同的,但是他们的地址是不同的
用直接赋值给的字符串,他们的赋值只要相同,那么他们的地址就是相同的,无论有几个,因为jvm只会建立一个string对象。
字符串的比较
s1.equals(s2)//s1和s2都是对象
遍历字符串
for(int i=0;i<s2.length();i++){
char c = s2.charAt(i);
System.out.print(c);
}
StringBuilder:是一个内容可变的字符串类,可以看做是一个容器
StringBuilder sb=new StringBuilder();//创建一个对象
StringBuilder sb=new StringBuilder("hello");
sb.append("hello");//添加数据并且返回数据本身
sb.reverse();//数据的反转
/*string和stringbuilder的相互变换*/
//Stringbuilder转string
String s=sb.toString();
System.out.println(s);
//string转Stringbuilder
String ss="hello";
StringBuilder sb2=new StringBuilder(ss);
System.out.println(sb2);
*********************************字符串的案例
package qq2;
import java.util.Scanner;
//用户登录三次,输入账号和密码 1
//输出一个字符串的字符 2
//统计字符串中大小写和数字的个数 3
//拼接字符串 4
//字符串反转 5
public class denglu {
public static void main(String[] args) {
String s1="ddddf";
String s2="q123456QfeDde";
Scanner sc=new Scanner(System.in);
//System.out.println(takeover(s2));
//1
// for(int i=0;i<3;i++){
// System.out.println("第"+(i+1)+"次输入");
// String ss1=sc.nextLine();
// String ss2=sc.nextLine();
// if((s1.equals(ss1))&&s2.equals(ss2)){
// System.out.println("成功");
// break;
// }
// else{
// System.out.println("第"+(i+1)+"次输入错误,你还有"+(2-i)+"次机会");
// }
// }
//2
// for(int i=0;i<s2.length();i++){
// char c = s2.charAt(i);
// System.out.print(c);
// }
//3
// int a1=0;
// int b1=0;
// int c1=0;
// for(int i=0;i<s2.length();i++){
// char c = s2.charAt(i);
// if(c<='z'&&c>='a'){
// a1++;
// }
// else if(c<='Z'&&c>='A'){
// b1++;}
// else if(c<='9'&&c>='0'){
// c1++;
// }
// }
// System.out.println("a1="+a1+",b1="+b1+",c1="+c1);
//4
// int[] arr={1,2,3,2};
// System.out.println(tos(arr));
//
//
}
public static String tos(int[] arr){//字符串改变格式输出方法
String s="";
s+="[";
for(int i=0;i<arr.length;i++){
if(i==arr.length-1){
s+=arr[i];
}
else{
s+=arr[i];
s+=", ";
}
}
s+="]";
return s;
}
public static String takeover(String s2){//字符串反转
String s="";
for(int i=s2.length()-1;i>=0;i--){
char c = s2.charAt(i);
s+=c;
}
return s;
}
}
加强版的字符串反转和格式化输出
public class dda {
public static void main(String[] args) {
int[] arr={1,2,4};
System.out.println(aa(arr));
String s="hhhdsf";
System.out.println(bb(s));
}
public static StringBuilder bb(String s){//方法反转
StringBuilder sb=new StringBuilder(s);
StringBuilder reverse = sb.reverse();
return reverse;
}
public static String aa(int[] arr){//方法格式化
StringBuilder sb=new StringBuilder();
sb.append("[");
for(int i=0;i<arr.length;i++){
if(i==arr.length-1){
sb.append(arr[i]);
}
else{
sb.append(arr[i]);
sb.append(", ");
}
}
sb.append("]");
String s=sb.toString();
return s;
}
}
good luck