【问题标题】:How to set array length to the size of a string and bring in characters from the string in Java如何将数组长度设置为字符串的大小并在Java中从字符串中引入字符
【发布时间】:2016-05-24 10:23:28
【问题描述】:

您好,我是 Java 新手,正在开展一个项目,将字符串拆分为单个字符并发送到 JavaFX。我想最好的方法是为此创建一个数组。

我想创建一个数组,使其具有至少为字符串长度的索引,但出现错误。然后我想将字符串的一部分从某个点发送到它的末尾到数组。我想我可以将单个字母发送到 JavaFX 标签和框。

public static void main(String[]args) {
    String gamePhrase = "Some Phrase here";
    String guessPhrase = gamePhrase.replaceAll("[a-zA-Z0-9]", "*"); 

    System.out.println(guessPhrase); 

    System.out.println(arraytest);

    char[] array2 =new char[gamePhrase.length()];

    guessPhrase.getChars (1,gamePhrase.length(),array2,0);

    System.out.println(array2);}
}

我在哪里错了?为什么我不能使用 string.length() 功能? 有没有人可以建议的更好的方法?我不想使用 toArray,因为数组不会包含所有字符。

任何帮助将不胜感激。

【问题讨论】:

  • 你在哪里得到错误,你得到哪个错误?你没有在任何地方分配arraytest?
  • guessPhrase.getChars (1,gamePhrase.length(),array2,0); 您从索引 1 开始。我怀疑您的索引越界异常?
  • 我没有注意到最初的“arraytest”,删除它之后它似乎已经运行了。
  • 我收到错误:由于某种原因,它不喜欢在以下行中使用该方法:char[] array2 =new char[gamePhrase.length()];

标签: java arrays string string-length


【解决方案1】:

您可以使用字符串 .toCharArray()。

char[] array2=gamePhrase.toCharArray()

那么你将拥有与getChars 相同的所有字符串。

【讨论】:

    【解决方案2】:

    希望这段代码对你有所帮助。,

        String str = "hello";
        char[] ch = new char[str.length()];
        ch = str.toCharArray();
        for(int i=0;i<ch.length;i++){
         //this will print all the char
         System.out.println("ch len == "+ ch[i]);
         //to select specific char
         if(ch[i] == 'l'){
             System.out.println("selected chars == "+ ch[i]);
         }
        }
    

    【讨论】:

    • char[] ch = new char[str.length()]; 什么都不做。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-14
    • 2020-07-28
    • 1970-01-01
    • 1970-01-01
    • 2011-05-13
    • 1970-01-01
    相关资源
    最近更新 更多