Java 基于字符串字符的菱形形状

Java 基于字符串字符的菱形形状,java,string,Java,String,我需要编写一个程序,读取字符串,然后根据字符串中的字符(来自用户输入)输出菱形。例如,如果用户输入示例,则应在菱形中打印以下内容: s SAS 萨马斯 桑普马斯 样本 样本量 样本 桑普马斯 萨马斯 SAS 我已经知道如何打印出输入的第一个字母,但不知道如何处理其他字母。(这是针对正三角形的,我假设倒三角形非常相似。) import java.util.Scanner; 公共级打印钻石{ 公共静态void main(字符串[]args){ //TODO自动生成的方法存根 扫描仪输入=新扫描仪(

我需要编写一个程序,读取字符串,然后根据字符串中的字符(来自用户输入)输出菱形。例如,如果用户输入示例,则应在菱形中打印以下内容: s SAS 萨马斯 桑普马斯 样本 样本量 样本 桑普马斯 萨马斯 SAS

我已经知道如何打印出输入的第一个字母,但不知道如何处理其他字母。(这是针对正三角形的,我假设倒三角形非常相似。)

import java.util.Scanner;
公共级打印钻石{
公共静态void main(字符串[]args){
//TODO自动生成的方法存根
扫描仪输入=新扫描仪(System.in);
System.out.println(“请输入字符串”);
String str=input.nextLine();
int l=str.length()*2-1;
int m=str.length();

对于(inti=0;i,我建议使用Stringbuilder和助手方法添加保持菱形所需的空间

public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    System.out.println("Please enter a string");
    String str = input.nextLine();
    StringBuilder sb;
    int i;
    for(i=1; i<=str.length(); i++){
        System.out.print(addSpace(str.length()-i) + str.substring(0,i));
        if(i>1){
            sb = new StringBuilder(str.substring(0,i-1));
            sb = sb.reverse();
            System.out.print(sb.toString())
        }
        System.out.println();
    }
    for(i=str.length()-1; i>0; i--){
        System.out.print(addSpace(str.length()-i) + str.substring(0,i));
        if(i>1){
            sb = new StringBuilder(str.substring(0,i-1));
            sb = sb.reverse();
            System.out.print(sb.toString())
        }
        System.out.println();
    }
}
public static String addSpace(int x){
    String s = "";
    for(int i=0; i<x; i++){
        s += " ";
    }
    return s;
}
publicstaticvoidmain(字符串[]args){
扫描仪输入=新扫描仪(System.in);
System.out.println(“请输入字符串”);
String str=input.nextLine();
为某人做准备;
int i;
对于(i=1;i1){
sb=新的StringBuilder(str.substring(0,i-1));
sb=sb.reverse();
系统输出打印(sb.toString())
}
System.out.println();
}
对于(i=str.length()-1;i>0;i--){
System.out.print(addSpace(str.length()-i)+str.substring(0,i));
如果(i>1){
sb=新的StringBuilder(str.substring(0,i-1));
sb=sb.reverse();
系统输出打印(sb.toString())
}
System.out.println();
}
}
公共静态字符串addSpace(int x){
字符串s=“”;
对于(int i=0;i
public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    System.out.println("Please enter a string");
    String str = input.nextLine();
    StringBuilder sb;
    int i;
    for(i=1; i<=str.length(); i++){
        System.out.print(addSpace(str.length()-i) + str.substring(0,i));
        if(i>1){
            sb = new StringBuilder(str.substring(0,i-1));
            sb = sb.reverse();
            System.out.print(sb.toString())
        }
        System.out.println();
    }
    for(i=str.length()-1; i>0; i--){
        System.out.print(addSpace(str.length()-i) + str.substring(0,i));
        if(i>1){
            sb = new StringBuilder(str.substring(0,i-1));
            sb = sb.reverse();
            System.out.print(sb.toString())
        }
        System.out.println();
    }
}
public static String addSpace(int x){
    String s = "";
    for(int i=0; i<x; i++){
        s += " ";
    }
    return s;
}