当前位置: 首页 > 知识库问答 >
问题:

递增Java中的字符类型

韩博简
2023-03-14

在练习Java的过程中,我随机想到了以下几点:

class test
{
    public static void main(String arg[])
    {
        char x='A';
        x=x+1;
        System.out.println(x);
    }
}

我认为它会抛出一个错误,因为在数学中,我们不能将数字值添加到字母A中,但下面的程序运行正确并打印

B 

这怎么可能?

共有3个答案

松英喆
2023-03-14

char是一种数字类型(2字节长),也是Java中唯一的无符号数字基元类型。

您还可以执行以下操作:

int foo = 'A';

这里的特别之处在于您使用字符常量而不是数字来初始化char。它的特别之处还在于它的字符串表示,正如您所看到的。您可以使用Character.digit(c,10)来获取它的数值(作为int,因为2^16-1不能由表示!)。

陆子默
2023-03-14

字符实际上映射到int,请查看Ascii表。

例如:大写a对应于十进制数字65。当您将1添加到该字符时,基本上将十进制数增加1。所以数字变成66,对应于大写B。

邹海超
2023-03-14

在Java中,char是一种数字类型。当您将1添加到char时,您将进入下一个unicode代码点。如果是“A”,下一个代码点是“B”:

char x='A';
x+=1;
System.out.println(x);

请注意,不能使用x=x 1,因为它会导致隐式缩小转换。您需要使用x或x=1。

 类似资料:
  • 问题内容: 在练习Java时,我随机想到了这一点: 我以为会抛出错误,因为我们无法将数值添加到数学中的字母上,但是以下程序可以正确运行并打印 那怎么可能? 问题答案: 在Java中,是数字类型。当添加到时,您将到达下一个 unicode代码点 。如果是,下一个代码点是: 请注意,您无法使用,因为它会导致隐式变窄转换。您需要使用或代替。

  • 问题内容: Java中的“自动递增”字母-这可能吗?从A到Z而没有第三方库? 问题答案: 是的,您可以这样做: 类型转换也是可能的:

  • 我需要一个java方法,它接受一个整数,然后将其递增并为您提供相应的alpha字符。类似于这样: 因此,如果我传递value等于,那么它应该递增并返回字母。如果我传递它,那么它应该返回字母。如果我将数字传递给它,那么它应该返回。如果我将数字传递给它,那么它应该返回等等。 alpha几乎模拟了excel工作表列的表示方式,我需要做的就是通过传递一个数字从方法中获取alpha值。除了从返回的字符串之外

  • 当我们尝试使用增量运算符和加法运算符来递增一个字节变量时会发生什么。 请给我来源,我们可以在哪里找到这样的小东西释放?请帮帮我。

  • 问题内容: 从下面或此处的程序中,为什么最后一次调用要打印该值7? 问题答案: 这将打印出“ 6”,因为它将i加1并返回值。5 + 1 = 6;这是前缀,在操作中使用该编号之前会添加该编号。 这将打印出“ 6”,因为它需要i,存储副本,加1并返回副本。因此,你获得了我当时的价值,但同时又增加了它。因此,你可以打印出旧值,但是它会增加。后缀增量的好处。 然后,当你打印出i时,它会显示i的实际值,因为

  • 本文向大家介绍关于Java中递增和递减运算符的有趣事实,包括了关于Java中递增和递减运算符的有趣事实的使用技巧和注意事项,需要的朋友参考一下 关于Java中的递增和递减运算符,有许多有趣的事实。我们将通过示例讨论其中的一些- 增量和减量运算符不能与'final'变量一起使用。这是由于与'final'关键字相关联的变量无法更改的事实- 示例 输出结果 无法嵌套'++'和'--'运算符。 示例 输出