java - 如何将这些打印的字母存储到数组中?

标签 java

现在这个程序打印出字母表 (a-z),但是我想取出这些字母并将每个字母存储在名为 leta 的数组中,我该怎么做?

public class Arrayofhope {

    public static void main (String[]args) {
        char []leta = new char[26];
        char letter = (char)65;
        char lettter=(char)90;

        for (int i = letter;i<=lettter;i++ ) {  
            System.out.print((char)i);
        }
    }
}

最佳答案

这几乎是一个“语法”类型的问题,但它也很棘手,指出它的工作原理是有一定值(value)的。

class Arrayofhope
{

   public static void main( String[] args )
   {
      char[] leta = new char[ 26 ];
      char letterA = 'a';
      char letterZ = 'z';
      for( int i = letterA; i <= letterZ; i++ ) {
         System.out.print( (char) i );
         leta[i-'a'] = (char)i;
      }
   }
}
  1. 单引号中的字符与 char 类型的整数相同。您可以分配它们并对它们进行数学计算。我认为这使得 char letterA = 'a'; 的初始赋值比使用数字 65 更清晰。

  2. 正如前面提到的,您也可以使用字符类型进行数学运算。请注意,数组索引 [i-'a'] 的计算方式是从第一个字符的 65 中减去 65,以便将 'a' 存储在索引 0 中,并从那里向上继续。这有点棘手,但从长远来看,我认为更清晰,也比尝试使用面前的 ASCII 表进行编程更容易。

关于java - 如何将这些打印的字母存储到数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33770180/

相关文章:

java - 在 Nifi 中,带有 Hive 数据库连接池服务的自定义处理器不起作用

java - 有谁知道如何显示 BitmapField?

java - 枚举和注解

java - 为什么 Spring 注解和 xml 配置注入(inject)集合的方式不同?

java - 执行 SELECT 查询时出现 ClassCastException

java - 在 Java 中设置 double 值的 2 个小数位

Java 7 : java. lang.IllegalArgumentException: 比较方法违反了它的一般契约

java - 线程 "AWT-EventQueue-0"java.lang.OutOfMemoryError : Java heap space 中的异常

java - 如何将 onBindViewHolder 内部的项目存储到数组

java - 反转数组中元素的顺序