public static void main(String[] args) {
创新互联专注于企业成都营销网站建设、网站重做改版、广州网站定制设计、自适应品牌网站建设、H5建站、商城网站建设、集团公司官网建设、成都外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为广州等各大城市提供网站开发制作服务。
System.out.println("你输入的单词数为:"+args.length);
StringBuffer strbuffer = new StringBuffer();
for(int i=0;iargs.length;i++){
String str = args[i];
strbuffer.append(str+" ");
System.out.println("正向");
System.out.println(str);
System.out.println("反向");
for(int j=str.length()-1;j=0;j--){
System.out.print(str.charAt(j));
}
System.out.println();
}
StringBuffer view = new StringBuffer();
for(int i=0;istrbuffer.length();i++){
String a = strbuffer.charAt(i)+"";
int counter = 0;
for(int j=0;jstrbuffer.length();j++){
if(a.equals(strbuffer.charAt(j)+"")){
counter++;
}
}
System.out.println("字符"+a+"出现的位置"+i+"出现的次数"+counter);
}
}
字符串连接,性能最高的方法是使用StringBuffer类。
原因:String声明后变不可改变,原因是String引用的是地址;即新生成的字符串会被实例化出不同的地址,但在原来的字符串还被存储在内存当中。而StringBuffer类内容是可以改变的,所以新的字符串产生,老的字符串所占用的内存会被释放掉。
实例代码如下:
package zbj;
import java.lang.StringBuffer;
import java.lang.Thread;
class StringRun implements Runnable {
private StringBuffer stringBuffer;
public void run() {
try {
stringBuffer = new StringBuffer();
for (int i = 1; i = 9999; i++) {
stringBuffer.append(i).append("z");
}
System.out.println(stringBuffer.toString());
} catch (Exception e) {
e.printStackTrace();
}
}
}
public class Test {
private static StringRun stringRun;
private static Thread thread;
public static void main(String... strings) {
try {
stringRun = new StringRun();
thread = new Thread(stringRun);
thread.start();
} catch (Exception e) {
e.printStackTrace();
}
}
}
代码:
import java.util.Scanner;
import static java.lang.System.*;
public class P {
public static void main(String[] args) {
char[] chs=new char[2];
int r,i=0;
out.print("请输入两个字母和行数(空格分隔):");
try(Scanner sc=new Scanner(in)) {
chs[0]=sc.next().charAt(0);
chs[1]=sc.next().charAt(0);
r=sc.nextInt();
}
for(int j=0;jr;j++) {
for(int k=0;kj;k++) {
out.printf("%c ",chs[i]);
i=(i+1)%2;
}
out.println(chs[i]);
i=(i+1)%2;
}
}
}
运行结果截图: