public class Spring和Stringbuilder的应用 { public static void main(String[] args) { int[] arr = {1, 2, 3,}; System.out.println(shuchu(arr)); } public static String shuchu(int[] arr) { StringBuilder sb = new StringBuilder(); sb.append("[");//stringbulider加语句用append string直接加 for (int i = 0; i < 3; i++) { if (i != 3-1) { sb.append(arr[i]).append(",");//加多个时候直接用》.. }else{ sb.append(arr[i]); } }sb.append("]"); String r=sb.toString(); return r; } }
使用一个方法将数组arr以string方式输出
stringbuilder使用好处是节省内存空间,其方法语句也方便操作
String和StringBulider的转换方法
StringBuilder名称.tostring();
StringBuilder 新名称=new Stringbuilder(String的名称);
StringBuilder加语句使用 名称.append(); 且其返回值是对象所以可以继续使用
例如 sb.append("hello").append("world"); 输出的就是helloworld
用StringBuilder完成字符串反转非常简单直接调用语句 sb.reverse();
键盘录入一个字符串完成反转有两种方法:
1、定义一个新的字符串来倒着存储
public class 字符串反转 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入一个字符串"); String a = sc.nextLine(); System.out.println(fanzhuan(a)); } public static String fanzhuan(String a) { String aa = ""; for (int i = a.length() - 1; i >= 0; i--) { if (i != 0) { aa += a.charAt(i); aa += ","; }else { aa+=a.charAt(i); } } return aa; }
2、用StringBuilder直接反转
public class 字符串反转升级版 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); String sb=sc.nextLine(); System.out.println(fanzhuan(sb)); } public static String fanzhuan(String sb){ return new StringBuilder(sb).reverse().toString(); } }
其中要注意最后输出可以用一句输出语句直接输出是因为方法的返回值都是对象
字符串的遍历
public class 字符串的遍历 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入一个字符串"); String a = sc.nextLine(); System.out.print("["); for (int i = 0; i < a.length(); i++) { if (i != a.length() - 1) { System.out.print(a.charAt(i) + ","); }else { System.out.print(a.charAt(i)); } } System.out.print("]"); }
字符串遍历时a.length()时字符串的长度(有括号数组没有),a.charAt(int);指字符串的第几位
字符串索引也是从0开始的
public class 用户登录 { public static void main(String[] args) { String zhanghao = "357458528"; String mima = "773551045.@"; for (int i = 0; i < 3; i++) { Scanner sc = new Scanner(System.in); System.out.println("请输入你的账号"); String zhanghao1 = sc.nextLine(); System.out.println("请输入你的密码"); String mima1 = sc.nextLine(); if (zhanghao.equals(zhanghao1) && mima.equals(mima1)) { System.out.println("登录成功"); break; } else { if(2-i==0){ System.out.println("您的帐号被锁定"); break; } System.out.println("您还有"+(2-i)+"次机会"); } } }
用户登录系统中注意的有
比较两个字符串是否相等用的是 名称1.equals(名称2)