Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中转换为字符串时,从StringArray的未使用空间中删除null_Java_Arrays_String - Fatal编程技术网

在Java中转换为字符串时,从StringArray的未使用空间中删除null

在Java中转换为字符串时,从StringArray的未使用空间中删除null,java,arrays,string,Java,Arrays,String,我正在处理一个Java编码问题,遇到了以下问题 输入:字符串->代码 需要输出:字符串->CCoCodCode 我的代码片段:(注意:在注释中,我已经编写了传递字符串时所期望的内容) 为什么null会被存储,尽管我已经减小了大小,如何删除它 注意:我需要使用数组来解决这个问题。我知道使用列表要容易得多。公共课堂答案{ public class Answer { public static String answer(String input){ StringBuilder sb =

我正在处理一个Java编码问题,遇到了以下问题

输入:字符串->代码
需要输出:字符串->CCoCodCode
我的代码片段:(注意:在注释中,我已经编写了传递字符串时所期望的内容)

为什么
null
会被存储,尽管我已经减小了大小,如何删除它

注意:我需要使用数组来解决这个问题。我知道使用列表要容易得多。

公共课堂答案{
public class Answer {

public static String answer(String input){

    StringBuilder sb = new StringBuilder(((input.length() + 1) * input.length()) / 2);

    for (int i = 1; i <= input.length(); i++) {
        sb.append(input.substring(0, i));
    }

    return sb.toString();
}

public static void main(String[] args) {
    System.out.println(answer("Code"));
}
公共静态字符串应答(字符串输入){ StringBuilder sb=新的StringBuilder(((input.length()+1)*input.length())/2); 对于(int i=1;i
公共类答案{
公共静态字符串应答(字符串输入){
StringBuilder sb=新的StringBuilder(((input.length()+1)*input.length())/2);

for(inti=1;iSize应该是字符串的长度。代码的长度是4。代码将生成{C,Co,Cod,Code}

  public String stringSplosion(String str) { // string Say 'Code'
    String join = "", values = "";
    String gotIt = "";

    int n = str.length(); // 4

    String[] result = new String[n];

    for (int i = 0; i < str.length(); i++) {
        values = str.substring(i, i + 1);
        join = join + values;
        result[i] = join;
    }
    System.out.println(Arrays.toString(result));

    for (String s : result) {
        gotIt = gotIt + s;
    }

    return gotIt; // Expected output: CCoCodCode
}
publicstringsplosion(stringstr){//String说“code”
字符串join=“”,值=“”;
字符串gotIt=“”;
int n=str.length();//4
字符串[]结果=新字符串[n];
对于(int i=0;i
大小应为字符串的长度。代码的长度为4。代码将生成{C,Co,Cod,code}

  public String stringSplosion(String str) { // string Say 'Code'
    String join = "", values = "";
    String gotIt = "";

    int n = str.length(); // 4

    String[] result = new String[n];

    for (int i = 0; i < str.length(); i++) {
        values = str.substring(i, i + 1);
        join = join + values;
        result[i] = join;
    }
    System.out.println(Arrays.toString(result));

    for (String s : result) {
        gotIt = gotIt + s;
    }

    return gotIt; // Expected output: CCoCodCode
}
publicstringsplosion(stringstr){//String说“code”
字符串join=“”,值=“”;
字符串gotIt=“”;
int n=str.length();//4
字符串[]结果=新字符串[n];
对于(int i=0;i
如果要保持代码的当前结构,请去掉第一个for循环。 并创建字符串[]数组=新字符串[n]

public static String stringSplosion(String str) { // string Say 'Code'
String join = "", values = "";
String gotIt = "";

int n = str.length(); // 4

String[] result = new String[n]; //you want your String array to contain 4 strings

for (int i = 0; i < str.length(); i++) {
    values = str.substring(i, i + 1);
    join = join + values;
    result[i] = join;
}

for (String s : result) {
    gotIt = gotIt + s;
}

return gotIt; // Expected output: CCoCodCode
}
publicstaticstringsplosion(stringstr){//String说'code'
字符串join=“”,值=“”;
字符串gotIt=“”;
int n=str.length();//4
字符串[]结果=新字符串[n];//您希望字符串数组包含4个字符串
对于(int i=0;i
如果要保持代码的当前结构,请去掉第一个for循环。 并创建字符串[]数组=新字符串[n]

public static String stringSplosion(String str) { // string Say 'Code'
String join = "", values = "";
String gotIt = "";

int n = str.length(); // 4

String[] result = new String[n]; //you want your String array to contain 4 strings

for (int i = 0; i < str.length(); i++) {
    values = str.substring(i, i + 1);
    join = join + values;
    result[i] = join;
}

for (String s : result) {
    gotIt = gotIt + s;
}

return gotIt; // Expected output: CCoCodCode
}
publicstaticstringsplosion(stringstr){//String说'code'
字符串join=“”,值=“”;
字符串gottit=“”;
int n=str.length();//4
字符串[]结果=新字符串[n];//您希望字符串数组包含4个字符串
对于(int i=0;i
不需要以下语句:

int size = 0;

    for (int i = n; i >= 1; i--) {
        size = size + n; // 4+3+2+1=10
    }
您只需要将数组大小从

String[] result = new String[size];


使您的程序能够提供预期的输出。

不需要以下语句:

int size = 0;

    for (int i = n; i >= 1; i--) {
        size = size + n; // 4+3+2+1=10
    }
您只需要将数组大小从

String[] result = new String[size];


为您的程序提供预期的输出。

如果我正确理解您的问题以打印模式,那么您可以使用以下代码

public String printPattern(String input){    
//Holds the iteration value by index
int previous=0;
//It holds the result characters
String result=null;
StringBuilder strBuilder=new StringBuilder();
//first loop to iterate only till input string length
for(int i=0;i<input.length();i++){
    //checking iteration lenght with input string length 
    if(previous<input.length()){
        //incrementing iteration for reading characters from input string
        previous++;
        //main loop for previous iteration value check and iterate
        for(int j=0;j<previous;j++){
            //converting string to Character array
            char a []=input.toCharArray();
            //using string builder to build the string from characters
            strBuilder.append((a[j]));
            //setting the value to stringbuilder by converting it in string
            result=strBuilder.toString();

        }

    }
}

return result;
公共字符串打印模式(字符串输入){
//按索引保存迭代值
int-previous=0;
//它保存结果字符
字符串结果=null;
StringBuilder strBuilder=新StringBuilder();
//仅迭代到输入字符串长度的第一个循环

对于(int i=0;i如果我正确理解您的问题以打印模式,那么您可以使用以下代码

public String printPattern(String input){    
//Holds the iteration value by index
int previous=0;
//It holds the result characters
String result=null;
StringBuilder strBuilder=new StringBuilder();
//first loop to iterate only till input string length
for(int i=0;i<input.length();i++){
    //checking iteration lenght with input string length 
    if(previous<input.length()){
        //incrementing iteration for reading characters from input string
        previous++;
        //main loop for previous iteration value check and iterate
        for(int j=0;j<previous;j++){
            //converting string to Character array
            char a []=input.toCharArray();
            //using string builder to build the string from characters
            strBuilder.append((a[j]));
            //setting the value to stringbuilder by converting it in string
            result=strBuilder.toString();

        }

    }
}

return result;
公共字符串打印模式(字符串输入){
//按索引保存迭代值
int-previous=0;
//它保存结果字符
字符串结果=null;
StringBuilder strBuilder=新StringBuilder();
//仅迭代到输入字符串长度的第一个循环

对于(inti=0;i),请学习如何输入代码。这并不难,可以缩进4个空格或使用
{}
嵌入式编辑器中的按钮。对于由此带来的不便,我深表歉意。由于数组太大,因此大小为空?如果不是,为什么不只打印值null@JohnKane数组大小不大。我使用了for循环来精确获得我想要的结果的大小。感谢所有的答案。理解我在代码中的错误。请学习如何输入代码。这并不难,可以缩进4个空格或使用
{}
嵌入式编辑器中的按钮。对于由此带来的不便,我深表歉意。由于数组太大,因此大小为空?如果不是,为什么不只打印值null@JohnKane数组大小不大。我使用了for循环来精确获得我想要的结果的大小。感谢所有答案。理解我在代码中的错误。