gpt4 book ai didi

java - 将字符串长度从 main 传递到数组中上面的同一类

转载 作者:行者123 更新时间:2023-12-01 19:36:39 26 4
gpt4 key购买 nike

回文检查

我需要将字符串长度从我的主方法传递到类,其中有一个必须定义其长度的字符数组...这是我的字符串长度本身...

char ch[] = new char[stringSize];// this is not working

public class PalindromeChecker {


static char queue[]=new char [100];

static char deQueue[]=new char[100];

static int size=0,front=0,rear=0;


public static void addRear (char ch)
{
queue[rear]=ch;
rear=(rear+1); // for cicular array
size=size+1;

}



public static void addFront()
{
for(int i=0;i<queue.length;i++)
{
deQueue[i]=queue[(queue.length-1)-i];
}
}

public static void show()
{
System.out.println();
for(int i=0;i<rear;i++)
{
System.out.print(queue[i]+" ");
}

}

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);




boolean status=true;

System.out.println("Enter your word for Palindrome check :");
String userData=scanner.nextLine();

int stringSize=userData.length();


System.out.println();
char ch[]=userData.toCharArray();

// System.out.println(Arrays.toString(ch));

for(int i=0;i<ch.length;i++)
{
addRear(ch[i]);
}

System.out.println("\nThe filled deQueue is : ");
show();

addFront();

System.out.println("\n\nNew filled deQueue");
// System.out.println(Arrays.toString(deQueue));

for(int i=0;i<rear;i++)
{
System.out.print(deQueue[i]+" ");
}

for(int i=0;i<5;i++)
{
if(deQueue[i]==queue[i])
{
status= true;
}
else
{
status=false;
System.out.println();
System.out.println("Not a palindrome !");
break;
}
}

System.out.println();
if(status)
{
System.out.println("\nPALINDROME !");
}


}

最佳答案

如果您询问如何将用户输入 String 的长度传递给 char 数组构造函数,那么由于您使用的是静态变量,请使用初始化数组并接受 int 作为参数的方法,如下所示:

static void initArrays(int inputSize){
queue = new char [inputSize];
deQueue = new char[inputSize];
}

当你有输入字符串时,只需调用:

initArrays(inputString.length());

关于java - 将字符串长度从 main 传递到数组中上面的同一类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57200282/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com