您好,我想将一个字符串显示为反向三角形。当我使用反向方法时,无法显示它。显然我做错了。
for (int i= 1; i >= 1; i--) { //reverse here
*******************
*****************
***************
*************
***********
*********
*******
*****
***
*
我想在上面显示此形状的字符串,但它需要显示一个单词
import java.io.*;
import java.util.Scanner;
import java.lang.String;
public class WorkShop2ABPaola
{
/**
* @param args the command line arguments
*/
public static void main(String args [])
{
try
{
Scanner sc = new Scanner(System.in);
String s;
int l;
System.out.println("Enter the String : ");
s = sc.nextLine();
l = s.length();
//outer loop
for(int i = 0; i < l; i++)
{
int padding = s.length() - i;
if(padding > 0)
{
System.out.printf("%" + padding + "s", " ");
//for inner loop
}
for(int j = 0; j < i; j++)
{
System.out.printf("%c ", s.charAt(j));
}
System.out.printf("%c\n", s.charAt(i));
}
}
catch(Exception e)
{
System.err.println(e);
}
}
}
答案 0 :(得分:0)
您发布的第一行是正确的方法:从长度开始(减去1,因为长度索引从零开始),然后向下移动。因此,与其将ZipEntry
从零开始,不应该从ZipFile
(长度)开始
ZipEntry
输出 :(将“ CorrectOutput”作为给定的$list = Import-Csv "c:\temp\list.csv"
$array_list = @()
foreach ($item in $list) {
$array_list += $item.position1
$array_list += $item.position2
$array_list += $item.position3
$array_list += $item.position4
$array_list += $item.position5
$array_list += $item.position6
$array_list += $item.position7
$array_list += $item.position8
$array_list += $item.position9
$array_list += $item.position10
}
)
i
答案 1 :(得分:0)
您基本上都正确。您只会有l
行,因为您每次都在两侧上都添加了填充空间。
这应该有效:
for(int i = l-1; i > -1; i--) {
int padding = s.length() - i;
if(padding > 0)
{
System.out.printf("%" + padding + "s", " ");
//for inner loop
}
for(int j = 0; j < i; j++) {
System.out.printf("%c ", s.charAt(j));
}
System.out.printf("%c\n", s.charAt(i));
}
“ TestString”生成的输出:
String